From: Matt Joiner Date: Tue, 5 Aug 2025 05:49:34 +0000 (+1000) Subject: Extra pedantry in chunkIndexSpec X-Git-Tag: v1.59.0~2^2~64 X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=e0baa6a82d715989f1268b7f35e62f6ebe934ad8;p=btrtrc.git Extra pedantry in chunkIndexSpec --- diff --git a/misc.go b/misc.go index ba4597ed..b0016781 100644 --- a/misc.go +++ b/misc.go @@ -6,6 +6,7 @@ import ( "github.com/RoaringBitmap/roaring" "github.com/anacrolix/missinggo/v2" + "github.com/anacrolix/missinggo/v2/panicif" "golang.org/x/time/rate" "github.com/anacrolix/torrent/metainfo" @@ -105,11 +106,12 @@ func validateInfo(info *metainfo.Info) error { } func chunkIndexSpec(index, pieceLength, chunkSize pp.Integer) ChunkSpec { - ret := ChunkSpec{index * chunkSize, chunkSize} - if ret.Begin+ret.Length > pieceLength { - ret.Length = pieceLength - ret.Begin + begin := index * chunkSize + panicif.GreaterThanOrEqual(begin, pieceLength) + return ChunkSpec{ + Begin: begin, + Length: min(chunkSize, pieceLength-begin), } - return ret } func comparePeerTrust(l, r *Peer) int {