mirror of
https://github.com/refraction-networking/uquic.git
synced 2025-04-06 21:57:36 +03:00
calculate NACK ranges in the correct order expected by the ACK frame writer
fixes #43
This commit is contained in:
parent
6700672440
commit
08d96d2a69
2 changed files with 8 additions and 14 deletions
|
@ -67,7 +67,7 @@ func (h *receivedPacketHandler) getNackRanges() ([]frames.NackRange, EntropyAccu
|
|||
var ranges []frames.NackRange
|
||||
inRange := false
|
||||
entropy := h.highestInOrderObservedEntropy
|
||||
for i := h.highestInOrderObserved + 1; i <= h.largestObserved; i++ {
|
||||
for i := h.largestObserved; i > h.highestInOrderObserved; i-- {
|
||||
entropyBit, ok := h.packetHistory[i]
|
||||
if !ok {
|
||||
if !inRange {
|
||||
|
@ -78,7 +78,7 @@ func (h *receivedPacketHandler) getNackRanges() ([]frames.NackRange, EntropyAccu
|
|||
ranges = append(ranges, r)
|
||||
inRange = true
|
||||
} else {
|
||||
ranges[len(ranges)-1].LastPacketNumber++
|
||||
ranges[len(ranges)-1].FirstPacketNumber--
|
||||
}
|
||||
} else {
|
||||
inRange = false
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue