diff options
-rw-r--r-- | plumbing/transport/internal/common/common.go | 6 | ||||
-rw-r--r-- | remote.go | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/plumbing/transport/internal/common/common.go b/plumbing/transport/internal/common/common.go index f67ae29..7001d05 100644 --- a/plumbing/transport/internal/common/common.go +++ b/plumbing/transport/internal/common/common.go @@ -263,6 +263,10 @@ func (s *session) ReceivePack(req *packp.ReferenceUpdateRequest) (*packp.ReportS return nil, err } + if err := s.Stdin.Close(); err != nil { + return nil, err + } + if !req.Capabilities.Supports(capability.ReportStatus) { // If we have neither report-status or sideband, we can only // check return value error. @@ -302,7 +306,7 @@ func (s *session) finish() error { func (s *session) Close() error { if err := s.finish(); err != nil { _ = s.Command.Close() - return nil + return err } return s.Command.Close() @@ -76,6 +76,8 @@ func (r *Remote) Push(o *PushOptions) (err error) { return err } + defer ioutil.CheckClose(s, &err) + ar, err := s.AdvertisedReferences() if err != nil { return err |