Don't try to read negative file sizes.
Return an error code for negative file sizes.
Merge pull request #13 from unknownbrackets/io-minor

Io minor