fix linter complaints
1 file changed, 14 insertions(+), 4 deletions(-)
changed files
M git/service/service.go → git/service/service.go
@@ -2,6 +2,7 @@ package service import ( "bytes" + "errors" "fmt" "io" "log"@@ -67,7 +68,7 @@ return nil } -func (c *ServiceCommand) UploadPack() error { +func (c *ServiceCommand) UploadPack() (err error) { cmd := exec.Command("git", []string{ "-c", "uploadpack.allowFilter=true", "upload-pack",@@ -79,13 +80,23 @@ cmd.SysProcAttr = &syscall.SysProcAttr{Setpgid: true} stdoutPipe, _ := cmd.StdoutPipe() cmd.Stderr = cmd.Stdout - defer stdoutPipe.Close() + defer func() { + err2 := stdoutPipe.Close() + if err == nil { + err = errors.Join(err, err2) + } + }() stdinPipe, err := cmd.StdinPipe() if err != nil { return err } - defer stdinPipe.Close() + defer func() { + err2 := stdinPipe.Close() + if err == nil { + err = errors.Join(err, err2) + } + }() if err := cmd.Start(); err != nil { log.Printf("git: failed to start git-upload-pack: %s", err)@@ -96,7 +107,6 @@ if _, err := io.Copy(stdinPipe, c.Stdin); err != nil { log.Printf("git: failed to copy stdin: %s", err) return err } - stdinPipe.Close() if _, err := io.Copy(newWriteFlusher(c.Stdout), stdoutPipe); err != nil { log.Printf("git: failed to copy stdout: %s", err)