Merge pull request #110 from arnehormann/legacy-fix

backport of fix in PR 109
diff --git a/buffer.go b/buffer.go
index 99b8ab7..df6baca 100644
--- a/buffer.go
+++ b/buffer.go
@@ -79,6 +79,9 @@
 	if b.length < need {
 		// refill
 		err = b.fill(need) // err deferred
+		if err == io.EOF && b.length >= need {
+			err = nil
+		}
 	}
 
 	p = b.buf[b.idx : b.idx+need]