peerconn.go | 3 +++ diff --git a/peerconn.go b/peerconn.go index 91ef37e601f27bf37a51b886f1658b88eb4f5d6f..c85135dc2c6a6a901eade4e0f0723e7c82ee25a8 100644 --- a/peerconn.go +++ b/peerconn.go @@ -984,6 +984,9 @@ // If this is maintained correctly, we might be able to support optional synchronous reading for // chunk sending, the way it used to work. func (c *PeerConn) peerRequestDataReadFailed(err error, r Request) { c.logger.WithDefaultLevel(log.Warning).Printf("error reading chunk for peer Request %v: %v", r, err) + if c.t.closed.IsSet() { + return + } i := pieceIndex(r.Index) if c.t.pieceComplete(i) { // There used to be more code here that just duplicated the following break. Piece