mirror of
https://github.com/v2fly/v2ray-core.git
synced 2024-04-21 17:01:35 +00:00
fix a bug in length calculation
This commit is contained in:
@@ -60,16 +60,17 @@ func (this *SendingWindow) Remove(idx uint32) {
|
||||
}
|
||||
seg.Release()
|
||||
this.data[pos] = nil
|
||||
if pos == this.start {
|
||||
if this.start == this.last {
|
||||
this.len = 0
|
||||
this.start = 0
|
||||
this.last = 0
|
||||
} else {
|
||||
delta := this.next[pos] - this.start
|
||||
this.start = this.next[pos]
|
||||
this.len -= delta
|
||||
if pos == this.start && pos == this.last {
|
||||
this.len = 0
|
||||
this.start = 0
|
||||
this.last = 0
|
||||
} else if pos == this.start {
|
||||
delta := this.next[pos] - this.start
|
||||
if this.next[pos] < this.start {
|
||||
delta = this.next[pos] + this.cap - this.start
|
||||
}
|
||||
this.start = this.next[pos]
|
||||
this.len -= delta
|
||||
} else if pos == this.last {
|
||||
this.last = this.prev[pos]
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user