Parcourir la source

release buffer if payload becomes small

Darien Raymond il y a 7 ans
Parent
commit
b2d9364cb5
1 fichiers modifiés avec 3 ajouts et 0 suppressions
  1. 3 0
      common/buf/reader.go

+ 3 - 0
common/buf/reader.go

@@ -47,6 +47,9 @@ func (r *BytesToBufferReader) ReadMultiBuffer() (MultiBuffer, error) {
 		if nBytes == len(r.buffer) && nBytes < xlSize {
 			freeBytes(r.buffer)
 			r.buffer = newBytes(uint32(nBytes) + 1)
+		} else if nBytes < Size {
+			freeBytes(r.buffer)
+			r.buffer = nil
 		}
 		return mb, nil
 	}