|
|
@@ -183,6 +183,8 @@ func (cn *conn) extendDeadline() {
|
|
|
func (cn *conn) condRelease(err *error) {
|
|
|
if *err == nil || resumableError(*err) {
|
|
|
cn.release()
|
|
|
+ } else {
|
|
|
+ cn.nc.Close()
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -289,7 +291,7 @@ func (c *Client) onItem(item *Item, fn func(*Client, *bufio.ReadWriter, *Item) e
|
|
|
return err
|
|
|
}
|
|
|
defer cn.condRelease(&err)
|
|
|
- if err := fn(c, cn.rw, item); err != nil {
|
|
|
+ if err = fn(c, cn.rw, item); err != nil {
|
|
|
return err
|
|
|
}
|
|
|
return nil
|