ignore io.EOF error if data was fully read #109
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This should fix Issue 108.
In buffer, we pass io.EOF to the caller where it's always checked for nil.
This can cause false positive errors when the data was fully read.
io.Reader is allowed to return the number of bytes read AND io.EOF, which is not an error in our case.
I'd love to add a test for this (and for closed issues for bugs in the code in general), but I don't know how to do it without a fake packet, which seems to be a little over the top. Any ideas?