|
|
@@ -133,8 +133,8 @@ func (m *Client) monitor() {
|
|
|
select {
|
|
|
case <-m.done.Wait():
|
|
|
m.sessionManager.Close()
|
|
|
- common.Close(m.link.Writer)
|
|
|
- pipe.CloseError(m.link.Reader)
|
|
|
+ common.Close(m.link.Writer) // nolint: errcheck
|
|
|
+ pipe.CloseError(m.link.Reader) // nolint: errcheck
|
|
|
return
|
|
|
case <-timer.C:
|
|
|
size := m.sessionManager.Size()
|
|
|
@@ -167,14 +167,15 @@ func fetchInput(ctx context.Context, s *Session, output buf.Writer) {
|
|
|
}
|
|
|
s.transferType = transferType
|
|
|
writer := NewWriter(s.ID, dest, output, transferType)
|
|
|
- defer s.Close()
|
|
|
- defer writer.Close()
|
|
|
+ defer s.Close() // nolint: errcheck
|
|
|
+ defer writer.Close() // nolint: errcheck
|
|
|
|
|
|
newError("dispatching request to ", dest).WithContext(ctx).WriteToLog()
|
|
|
if pReader, ok := s.input.(*pipe.Reader); ok {
|
|
|
if err := copyFirstPayload(pReader, writer); err != nil {
|
|
|
newError("failed to fetch first payload").Base(err).WithContext(ctx).WriteToLog()
|
|
|
writer.hasError = true
|
|
|
+ pipe.CloseError(s.input)
|
|
|
return
|
|
|
}
|
|
|
}
|
|
|
@@ -182,6 +183,7 @@ func fetchInput(ctx context.Context, s *Session, output buf.Writer) {
|
|
|
if err := buf.Copy(s.input, writer); err != nil {
|
|
|
newError("failed to fetch all input").Base(err).WithContext(ctx).WriteToLog()
|
|
|
writer.hasError = true
|
|
|
+ pipe.CloseError(s.input)
|
|
|
return
|
|
|
}
|
|
|
}
|