diff --git a/common/buf/writer.go b/common/buf/writer.go index 56bcd8802..85771cff5 100644 --- a/common/buf/writer.go +++ b/common/buf/writer.go @@ -93,6 +93,9 @@ func (w *BufferedWriter) WriteMultiBuffer(b MultiBuffer) error { defer b.Release() for !b.IsEmpty() { + if w.buffer == nil { + w.buffer = New() + } if err := w.buffer.AppendSupplier(ReadFrom(&b)); err != nil { return err } @@ -113,11 +116,7 @@ func (w *BufferedWriter) Flush() error { return err } - if w.buffered { - w.buffer = New() - } else { - w.buffer = nil - } + w.buffer = nil } return nil }