From 0f546caed0a6f549ca7faa72337fd89222c6b756 Mon Sep 17 00:00:00 2001 From: Kleissner Date: Mon, 1 Nov 2021 09:09:30 +0100 Subject: [PATCH] UDT: Fix a bug in udtSocketRecv.ingestData. The wrong sequence identifier was pushed to the lossList. #43 --- udt/udtsocket_recv.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/udt/udtsocket_recv.go b/udt/udtsocket_recv.go index d7f9f06..0d8cdaa 100644 --- a/udt/udtsocket_recv.go +++ b/udt/udtsocket_recv.go @@ -221,7 +221,7 @@ func (s *udtSocketRecv) ingestData(p *packet.DataPacket, now time.Time) { fmt.Printf("Warning sequence out of order :( Code that follows will crash. Expected %d but received is %d\n", s.farNextPktSeq, p.Seq) newLoss := make(receiveLossHeap, 0, seqDiff) for idx := s.farNextPktSeq; idx != seq; idx.Incr() { - newLoss = append(newLoss, recvLossEntry{packetID: seq}) + newLoss = append(newLoss, recvLossEntry{packetID: idx}) } if s.recvLossList == nil { @@ -229,7 +229,7 @@ func (s *udtSocketRecv) ingestData(p *packet.DataPacket, now time.Time) { heap.Init(&s.recvLossList) } else { for idx := s.farNextPktSeq; idx != seq; idx.Incr() { - heap.Push(&s.recvLossList, recvLossEntry{packetID: seq}) + heap.Push(&s.recvLossList, recvLossEntry{packetID: idx}) } heap.Init(&newLoss) }