[X] Bug fix (involves code and configuration changes)
About
Normally offset pointers to xref keywords in a PDF document are exact to the byte. However, in some cases the pointer may point to some whitespace before the xref keyword. Adobe Acrobat takes these 'errors' in stride, displaying the document anyway, and so should PdfParser.
Clean up the getXrefData() function in RawDataParser.php. It now only needs to do one preg_match_all() and pushes the caret past whitespace when looking for xref keywords.
Use existing Issue557.pdf to create a new file: Issue673.pdf where the last /Prev 13486 command has been decremented to /Prev 13485. Trying to parse this file would cause an Exception without this fix. Resolves #673.
Checklist for code / configuration changes
In case you changed the code/configuration, please read each of the following checkboxes as they contain valuable information:
[X] Please add at least one test case (unit test, system test, ...) to demonstrate that the change is working. If existing code was changed, your tests cover these code parts as well.
Type of pull request
About
Normally offset pointers to
xref
keywords in a PDF document are exact to the byte. However, in some cases the pointer may point to some whitespace before thexref
keyword. Adobe Acrobat takes these 'errors' in stride, displaying the document anyway, and so should PdfParser.Clean up the getXrefData() function in RawDataParser.php. It now only needs to do one
preg_match_all()
and pushes the caret past whitespace when looking forxref
keywords.Use existing Issue557.pdf to create a new file: Issue673.pdf where the last
/Prev 13486
command has been decremented to/Prev 13485
. Trying to parse this file would cause an Exception without this fix. Resolves #673.Checklist for code / configuration changes
In case you changed the code/configuration, please read each of the following checkboxes as they contain valuable information:
fixes #1234
to outline that you are providing a fix for the issue#1234
.