Add fall back with 7zip

This commit is contained in:
2025-09-02 18:37:30 +07:00
parent cf9d499e91
commit c26ecf70fe
3 changed files with 25 additions and 8 deletions

View File

@@ -49,8 +49,8 @@ func main() {
fmt.Println("Diffing folders...") fmt.Println("Diffing folders...")
result, err := DiffFolders(oldPath, newPath) result, err := DiffFolders(oldPath, newPath)
if err != nil { if err != nil {
fmt.Println("Error:", err) fmt.Fprintln(os.Stderr, "Error:", err)
return os.Exit(1)
} }
fmt.Println() fmt.Println()
fmt.Println("Diffing folders done.") fmt.Println("Diffing folders done.")
@@ -60,16 +60,16 @@ func main() {
fmt.Println("Copying new files...") fmt.Println("Copying new files...")
if err := CopyNewFiles(newPath, result); err != nil { if err := CopyNewFiles(newPath, result); err != nil {
fmt.Println("Error writing diff:", err) fmt.Fprintln(os.Stderr, "Error writing diff:", err)
return os.Exit(1)
} }
fmt.Println() fmt.Println()
fmt.Println("Copying new files done.") fmt.Println("Copying new files done.")
fmt.Println("Making hdiff files...") fmt.Println("Making hdiff files...")
if err := MakeHdiffFile(oldPath, newPath, result.Changed); err != nil { if err := MakeHdiffFile(oldPath, newPath, result.Changed); err != nil {
fmt.Println("Error writing diff:", err) fmt.Fprintln(os.Stderr, "Error writing diff:", err)
return os.Exit(1)
} }
fmt.Println() fmt.Println()
fmt.Println("Making hdiff files done.") fmt.Println("Making hdiff files done.")
@@ -77,8 +77,17 @@ func main() {
fmt.Println("Zipping hdiff files...") fmt.Println("Zipping hdiff files...")
if err := ZipWith7za(hdiffFolderPath, hdiffName); err != nil { if err := ZipWith7za(hdiffFolderPath, hdiffName); err != nil {
fmt.Println("Error writing diff:", err) fmt.Println("Error writing diff:", err)
return os.Exit(1)
} }
if _, err := os.Stat(hdiffName); os.IsNotExist(err) {
fmt.Println("File not found, retrying...")
if err := ZipWith7za(hdiffFolderPath, hdiffName); err != nil {
fmt.Println("Retry failed:", err)
os.Exit(1)
}
}
fmt.Println("Zipping hdiff files done.") fmt.Println("Zipping hdiff files done.")
fmt.Println("Removing hdiff temp files...") fmt.Println("Removing hdiff temp files...")

View File

@@ -1,4 +1,4 @@
APP_NAME = ldff-converter.exe APP_NAME = ldiff-converter.exe
all: build all: build

View File

@@ -144,6 +144,14 @@ func main() {
fmt.Fprintln(os.Stderr, "error zip hdiff:", err) fmt.Fprintln(os.Stderr, "error zip hdiff:", err)
os.Exit(1) os.Exit(1)
} }
if _, err := os.Stat(hdiff); os.IsNotExist(err) {
fmt.Println("File not found, retrying...")
if err := ZipWith7za(hdiffFolderPath, hdiff); err != nil {
fmt.Println("Retry failed:", err)
os.Exit(1)
}
}
fmt.Println("Zipping hdiff files done.") fmt.Println("Zipping hdiff files done.")
fmt.Println("Removing hdiff temp files...") fmt.Println("Removing hdiff temp files...")