From e49fb2f50d4811e8e2c26f9b2542a7554b71769a Mon Sep 17 00:00:00 2001 From: Darien Raymond Date: Thu, 25 Aug 2016 11:41:05 +0200 Subject: [PATCH] no compacting buffers --- transport/internet/kcp/sending.go | 21 +-------------------- 1 file changed, 1 insertion(+), 20 deletions(-) diff --git a/transport/internet/kcp/sending.go b/transport/internet/kcp/sending.go index a5a596f8a..85322c598 100644 --- a/transport/internet/kcp/sending.go +++ b/transport/internet/kcp/sending.go @@ -65,13 +65,6 @@ func (this *SendingWindow) First() *DataSegment { return this.data[this.start] } -func (this *SendingWindow) Last() *DataSegment { - if this.IsEmpty() { - return nil - } - return this.data[this.last] -} - func (this *SendingWindow) Clear(una uint32) { for !this.IsEmpty() && this.data[this.start].Number < una { this.Remove(0) @@ -266,19 +259,7 @@ func (this *SendingWorker) Push(b []byte) int { nBytes := 0 this.Lock() defer this.Unlock() - if !this.window.IsEmpty() { - lastSeg := this.window.Last() - dataLen := lastSeg.Data.Len() - if dataLen < int(this.conn.mss) { - delta := int(this.conn.mss) - dataLen - if delta > len(b) { - delta = len(b) - } - lastSeg.Data.Append(b[:delta]) - b = b[delta:] - nBytes += delta - } - } + for len(b) > 0 && !this.window.IsFull() { var size int if len(b) > int(this.conn.mss) {