Procházet zdrojové kódy

fix window write loss

ffdfgdfg před 5 roky
rodič
revize
847f0ce1d4
1 změnil soubory, kde provedl 3 přidání a 3 odebrání
  1. 3 3
      lib/mux/conn.go

+ 3 - 3
lib/mux/conn.go

@@ -223,10 +223,10 @@ func (Self *window) SetSendBuf(buf []byte) {
 func (Self *window) fullSlide() {
 	// slide by allocate
 	newBuf := common.WindowBuff.Get()
-	copy(newBuf[0:Self.len()], Self.windowBuff[Self.off:])
-	Self.off = 0
+	Self.liteSlide()
+	n := copy(newBuf[:Self.len()], Self.windowBuff)
 	common.WindowBuff.Put(Self.windowBuff)
-	Self.windowBuff = newBuf
+	Self.windowBuff = newBuf[:n]
 	return
 }