]> Sergey Matveev's repositories - btrtrc.git/commitdiff
Show connection piece request order in text status
authorMatt Joiner <anacrolix@gmail.com>
Wed, 4 Jan 2017 07:09:50 +0000 (18:09 +1100)
committerMatt Joiner <anacrolix@gmail.com>
Wed, 4 Jan 2017 07:09:50 +0000 (18:09 +1100)
connection.go

index b1ab07f835d0504f1fe51fed5b2141c83250087d..76631cdc915ac36caf2cffca0049cc1156df0add 100644 (file)
@@ -210,6 +210,18 @@ func (cn *connection) WriteStatus(w io.Writer, t *Torrent) {
                len(cn.PeerRequests),
                cn.statusFlags(),
        )
+       fmt.Fprintf(w, "    next pieces: %v\n", priorityBitmapHeadAsSlice(&cn.pieceRequestOrder, 10))
+}
+
+func priorityBitmapHeadAsSlice(pb *prioritybitmap.PriorityBitmap, n int) (ret []int) {
+       pb.IterTyped(func(i int) bool {
+               if len(ret) >= n {
+                       return false
+               }
+               ret = append(ret, i)
+               return true
+       })
+       return
 }
 
 func (cn *connection) Close() {