From: Matt Joiner Date: Wed, 17 Nov 2021 03:01:11 +0000 (+1100) Subject: Optimize PeerConn.peerHasAllPieces X-Git-Tag: v1.39.0~53 X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=2f907e84a8c637fa968653647fcd53c23b0bd29b;p=btrtrc.git Optimize PeerConn.peerHasAllPieces --- diff --git a/peerconn.go b/peerconn.go index bd0bce2e..4dcf71e8 100644 --- a/peerconn.go +++ b/peerconn.go @@ -242,7 +242,7 @@ func (cn *PeerConn) peerHasAllPieces() (all bool, known bool) { if !cn.t.haveInfo() { return false, false } - return roaring.Flip(&cn._peerPieces, 0, bitmap.BitRange(cn.t.numPieces())).IsEmpty(), true + return cn._peerPieces.GetCardinality() == uint64(cn.t.numPieces()), true } func (cn *Peer) locker() *lockWithDeferreds {