mirror of https://github.com/v2ray/v2ray-core
correctly handle sending window length
parent
d6e6b464c1
commit
d716d02cd8
|
@ -40,6 +40,7 @@ func (v *SendingWindow) Release() {
|
||||||
if v == nil {
|
if v == nil {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
v.len = 0
|
||||||
for _, seg := range v.data {
|
for _, seg := range v.data {
|
||||||
seg.Release()
|
seg.Release()
|
||||||
}
|
}
|
||||||
|
@ -135,6 +136,10 @@ func (v *SendingWindow) HandleFastAck(number uint32, rto uint32) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (v *SendingWindow) Visit(visitor func(seg *DataSegment) bool) {
|
func (v *SendingWindow) Visit(visitor func(seg *DataSegment) bool) {
|
||||||
|
if v.IsEmpty() {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
for i := v.start; ; i = v.next[i] {
|
for i := v.start; ; i = v.next[i] {
|
||||||
if !visitor(&v.data[i]) || i == v.last {
|
if !visitor(&v.data[i]) || i == v.last {
|
||||||
break
|
break
|
||||||
|
|
Loading…
Reference in New Issue