Details
-
Task
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
Description
Some parsers may assume that skip() returns the number of bytes actually skipped. As we've learned, FileInputStream's return value can be completely divorced from reality, and it can report that the stream is skipping even past the EOF.
If we convert TikaInputStream's skip() to something that will throw an exception if a 3rd party parser tries to skip past the end of a file, we may prevent an entire class of bugs.