فهرست منبع

add check for largeSize in case there is just one pool

Darien Raymond 7 سال پیش
والد
کامیت
8f7bdede4e
1فایلهای تغییر یافته به همراه2 افزوده شده و 2 حذف شده
  1. 2 2
      common/buf/reader.go

+ 2 - 2
common/buf/reader.go

@@ -23,7 +23,7 @@ func (r *BytesToBufferReader) readSmall() (MultiBuffer, error) {
 	b := New()
 	for i := 0; i < 64; i++ {
 		err := b.Reset(ReadFrom(r.Reader))
-		if b.IsFull() {
+		if b.IsFull() && largeSize > Size {
 			r.buffer = newBytes(Size + 1)
 		}
 		if !b.IsEmpty() {
@@ -45,7 +45,7 @@ func (r *BytesToBufferReader) freeBuffer() {
 
 // ReadMultiBuffer implements Reader.
 func (r *BytesToBufferReader) ReadMultiBuffer() (MultiBuffer, error) {
-	if r.buffer == nil {
+	if r.buffer == nil || largeSize == Size {
 		return r.readSmall()
 	}