fix: issue with downloading without hooks

This commit is contained in:
David Allen 2025-08-28 19:43:53 -06:00
parent 2536848541
commit f897bc3ca5
Signed by: towk
GPG key ID: 0430CDBE22619155

View file

@ -72,10 +72,14 @@ func addToArchive(tw *tar.Writer, filename string, hooks []makeshift.Hook) error
} }
} }
// open file to write to archive // use original file if no hooks to write archive
file, err = os.Open(tempfile) if len(hooks) == 0 {
file, err = os.Open(filename)
} else {
file, err = os.Open(tempfile)
}
if err != nil { if err != nil {
return fmt.Errorf("failed to open temporary file: %v", err) return fmt.Errorf("failed to open archive file: %v", err)
} }
defer file.Close() defer file.Close()
@ -108,15 +112,21 @@ func addToArchive(tw *tar.Writer, filename string, hooks []makeshift.Hook) error
} }
// copy file content to tar archive // copy file content to tar archive
_, err = io.Copy(tw, strings.NewReader(string(data.([]byte)))) if len(hooks) == 0 {
_, err = io.Copy(tw, file)
} else {
_, err = io.Copy(tw, strings.NewReader(string(data.([]byte))))
}
if err != nil { if err != nil {
return err return err
} }
// delete the temporary file since we're done with it // delete the temporary file since we're done with it
err = os.Remove(tempfile) if len(hooks) != 0 {
if err != nil { err = os.Remove(tempfile)
return err if err != nil {
return err
}
} }
return nil return nil