Loading main.go +14 −15 Original line number Diff line number Diff line Loading @@ -2771,11 +2771,7 @@ func copyFile(src, dst string) error { if err != nil { return err } defer out.Close() if _, err := io.Copy(out, in); err != nil { return err } return out.Close() return copyAndClose(in, out) } func copyDir(src, dst string) error { Loading Loading @@ -2836,16 +2832,14 @@ func extractZip(src, destination string) error { } out, err := os.OpenFile(cleanTarget, os.O_CREATE|os.O_TRUNC|os.O_WRONLY, effectivePerm(f.Mode(), 0o644)) if err != nil { in.Close() return err return errors.Join(err, in.Close()) } if _, err := io.Copy(out, in); err != nil { out.Close() in.Close() if err := copyAndClose(in, out); err != nil { return errors.Join(err, in.Close()) } if err := in.Close(); err != nil { return err } out.Close() in.Close() } return nil } Loading Loading @@ -2892,11 +2886,9 @@ func extractTarGz(src, destination string) error { if err != nil { return err } if _, err := io.Copy(out, tr); err != nil { out.Close() if err := copyAndClose(tr, out); err != nil { return err } out.Close() case tar.TypeSymlink: if err := os.MkdirAll(filepath.Dir(cleanTarget), 0o755); err != nil { return err Loading Loading @@ -2931,3 +2923,10 @@ func effectivePerm(mode os.FileMode, fallback os.FileMode) os.FileMode { } return perm } func copyAndClose(in io.Reader, out *os.File) error { if _, err := io.Copy(out, in); err != nil { return errors.Join(err, out.Close()) } return out.Close() } Loading
main.go +14 −15 Original line number Diff line number Diff line Loading @@ -2771,11 +2771,7 @@ func copyFile(src, dst string) error { if err != nil { return err } defer out.Close() if _, err := io.Copy(out, in); err != nil { return err } return out.Close() return copyAndClose(in, out) } func copyDir(src, dst string) error { Loading Loading @@ -2836,16 +2832,14 @@ func extractZip(src, destination string) error { } out, err := os.OpenFile(cleanTarget, os.O_CREATE|os.O_TRUNC|os.O_WRONLY, effectivePerm(f.Mode(), 0o644)) if err != nil { in.Close() return err return errors.Join(err, in.Close()) } if _, err := io.Copy(out, in); err != nil { out.Close() in.Close() if err := copyAndClose(in, out); err != nil { return errors.Join(err, in.Close()) } if err := in.Close(); err != nil { return err } out.Close() in.Close() } return nil } Loading Loading @@ -2892,11 +2886,9 @@ func extractTarGz(src, destination string) error { if err != nil { return err } if _, err := io.Copy(out, tr); err != nil { out.Close() if err := copyAndClose(tr, out); err != nil { return err } out.Close() case tar.TypeSymlink: if err := os.MkdirAll(filepath.Dir(cleanTarget), 0o755); err != nil { return err Loading Loading @@ -2931,3 +2923,10 @@ func effectivePerm(mode os.FileMode, fallback os.FileMode) os.FileMode { } return perm } func copyAndClose(in io.Reader, out *os.File) error { if _, err := io.Copy(out, in); err != nil { return errors.Join(err, out.Close()) } return out.Close() }