1
0
mirror of https://github.com/v2fly/v2ray-core.git synced 2025-02-20 23:47:21 -05:00

release buffer on error

This commit is contained in:
Darien Raymond 2017-11-07 16:53:02 +01:00
parent 8554a5e0bf
commit 7cd2d62d06
No known key found for this signature in database
GPG Key ID: 7251FFA14BB18169

View File

@ -18,13 +18,16 @@ type MultiBufferReader interface {
ReadMultiBuffer() (MultiBuffer, error)
}
// ReadAllToMultiBuffer reads all content from the reader into a MultiBuffer, until EOF.
func ReadAllToMultiBuffer(reader io.Reader) (MultiBuffer, error) {
mb := NewMultiBuffer()
for {
b := New()
err := b.AppendSupplier(ReadFrom(reader))
if !b.IsEmpty() {
err := b.Reset(ReadFrom(reader))
if b.IsEmpty() {
b.Release()
} else {
mb.Append(b)
}
if err != nil {