From 4e8e15d528f1ebc837da7e7bf628bfabfa7366a4 Mon Sep 17 00:00:00 2001 From: Darien Raymond Date: Tue, 7 Feb 2017 00:39:07 +0100 Subject: [PATCH] refine error handling in byte reader --- common/buf/reader.go | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/common/buf/reader.go b/common/buf/reader.go index b78f20b0..270668a9 100644 --- a/common/buf/reader.go +++ b/common/buf/reader.go @@ -46,7 +46,7 @@ func (v *BytesToBufferReader) Read() (*Buffer, error) { type BufferToBytesReader struct { stream Reader current *Buffer - eof bool + err error } // Fill fills in the internal buffer. @@ -55,20 +55,20 @@ func (v *BufferToBytesReader) Fill() { b, err := v.stream.Read() v.current = b if err != nil { - v.eof = true + v.err = err v.current = nil } } func (v *BufferToBytesReader) Read(b []byte) (int, error) { - if v.eof { - return 0, io.EOF + if v.err != nil { + return 0, v.err } if v.current == nil { v.Fill() - if v.eof { - return 0, io.EOF + if v.err != nil { + return 0, v.err } } nBytes, err := v.current.Read(b)