From: Author Name Date: Sat, 5 May 2018 17:47:38 +0000 (-0700) Subject: io: calculate buffer size only when needed X-Git-Tag: go1.11beta1~516 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=15ac56fd60a28879fd65f6d761cc30c4c57ec0f1;p=gostls13.git io: calculate buffer size only when needed Change-Id: I930be9027fb972198b3d44816a5e4f53ff7eb5ea Reviewed-on: https://go-review.googlesource.com/111642 Reviewed-by: Brad Fitzpatrick Run-TryBot: Brad Fitzpatrick TryBot-Result: Gobot Gobot --- diff --git a/src/io/io.go b/src/io/io.go index 3999a385c6..72b75813a5 100644 --- a/src/io/io.go +++ b/src/io/io.go @@ -387,15 +387,15 @@ func copyBuffer(dst Writer, src Reader, buf []byte) (written int64, err error) { if rt, ok := dst.(ReaderFrom); ok { return rt.ReadFrom(src) } - size := 32 * 1024 - if l, ok := src.(*LimitedReader); ok && int64(size) > l.N { - if l.N < 1 { - size = 1 - } else { - size = int(l.N) - } - } if buf == nil { + size := 32 * 1024 + if l, ok := src.(*LimitedReader); ok && int64(size) > l.N { + if l.N < 1 { + size = 1 + } else { + size = int(l.N) + } + } buf = make([]byte, size) } for {