From 80aec73cb5ef0fc03e108ccd36871d94aaace96b Mon Sep 17 00:00:00 2001
From: Matt Joiner <anacrolix@gmail.com>
Date: Sat, 18 Dec 2021 09:22:18 +1100
Subject: [PATCH] Make Torrent.cancelRequestsForPiece more efficient

---
 torrent.go | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/torrent.go b/torrent.go
index f82032be..0f360374 100644
--- a/torrent.go
+++ b/torrent.go
@@ -1995,9 +1995,8 @@ func (t *Torrent) pieceHashed(piece pieceIndex, passed bool, hashIoErr error) {
 }
 
 func (t *Torrent) cancelRequestsForPiece(piece pieceIndex) {
-	// TODO: Make faster
-	for cn := range t.conns {
-		cn.tickleWriter()
+	for ri := t.pieceRequestIndexOffset(piece); ri < t.pieceRequestIndexOffset(piece+1); ri++ {
+		t.cancelRequest(ri)
 	}
 }
 
-- 
2.51.0