torrent.go | 3 ++- diff --git a/torrent.go b/torrent.go index 976a04e3ca692bbe0d97dee719060e7a31f7c7ef..f342de225cbef828011bdee74cb28be111bcafb7 100644 --- a/torrent.go +++ b/torrent.go @@ -1486,7 +1486,6 @@ err := p.Storage().MarkComplete() if err != nil { log.Printf("%T: error marking piece complete %d: %s", t.storage, piece, err) } - t.updatePieceCompletion(piece) } else { if len(touchers) != 0 { for _, c := range touchers { @@ -1507,7 +1506,9 @@ t.cl.banPeerIP(missinggo.AddrIP(c.remoteAddr())) c.Drop() } t.onIncompletePiece(piece) + p.Storage().MarkNotComplete() } + t.updatePieceCompletion(piece) } func (t *Torrent) cancelRequestsForPiece(piece int) {