debug unrar
This commit is contained in:
parent
8d2d7d4791
commit
75280e6346
@ -511,23 +511,38 @@ func unzip(srcZip, destDir string) error {
|
||||
return nil
|
||||
}
|
||||
func unrarExtract(srcRar, destDir string) error {
|
||||
cmd := exec.Command("unrar", "x", "-y", srcRar, destDir)
|
||||
output, err := cmd.CombinedOutput()
|
||||
if err == nil {
|
||||
log.Printf("[DEBUG] Début de l’extraction RAR – src: %q, dest: %q", srcRar, destDir)
|
||||
|
||||
// 1) Tentative avec unrar
|
||||
cmdUnrar := exec.Command("unrar", "x", "-y", srcRar, destDir)
|
||||
log.Printf("[DEBUG] Exécution de la commande unrar : %s", strings.Join(cmdUnrar.Args, " "))
|
||||
outputUnrar, errUnrar := cmdUnrar.CombinedOutput()
|
||||
log.Printf("[DEBUG] Résultat unrar – err: %v, output:\n%s", errUnrar, string(outputUnrar))
|
||||
|
||||
if errUnrar == nil {
|
||||
log.Printf("[INFO] Extraction réussie avec unrar.")
|
||||
return nil
|
||||
}
|
||||
log.Printf("[WARN] Échec de unrar, passage à 7z.")
|
||||
|
||||
|
||||
// 2) Repli sur 7z
|
||||
cmd7z := exec.Command("7z", "x", srcRar, "-y", "-o"+destDir)
|
||||
log.Printf("[DEBUG] Exécution de la commande 7z : %s", strings.Join(cmd7z.Args, " "))
|
||||
output7z, err7z := cmd7z.CombinedOutput()
|
||||
log.Printf("[DEBUG] Résultat 7z – err: %v, output:\n%s", err7z, string(output7z))
|
||||
|
||||
if err7z == nil {
|
||||
log.Printf("[INFO] Extraction réussie avec 7z.")
|
||||
return nil
|
||||
}
|
||||
|
||||
return fmt.Errorf(
|
||||
"unrar failed: %v, output: %s\n7z fallback failed: %v, output: %s",
|
||||
err, string(output),
|
||||
// 3) Les deux ont échoué
|
||||
errMsg := fmt.Errorf(
|
||||
"unrar a échoué : %v\nSortie unrar : %s\n\n7z a échoué : %v\nSortie 7z : %s",
|
||||
errUnrar, string(outputUnrar),
|
||||
err7z, string(output7z),
|
||||
)
|
||||
log.Printf("[ERROR] %v", errMsg)
|
||||
return errMsg
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user