torrent.go | 3 +++ diff --git a/torrent.go b/torrent.go index 688ca3f80d8a5a241eb59b3a0efc583da1e9b59f..078dca22945e55c6e97116ee02f192d3cf702659 100644 --- a/torrent.go +++ b/torrent.go @@ -2169,6 +2169,9 @@ t.cl.banPeerIP(peer.AsSlice()) log.Printf("smart banned %v for piece %v", peer, index) } t.dropBannedPeers() + for ri := t.pieceRequestIndexOffset(index); ri < t.pieceRequestIndexOffset(index+1); ri++ { + t.smartBanCache.ForgetBlock(ri) + } } p.hashing = false t.pieceHashed(index, correct, copyErr)