You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ti...@apache.org on 2016/01/09 19:50:32 UTC
svn commit: r1723874 -
/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/COSParser.java
Author: tilman
Date: Sat Jan 9 18:50:31 2016
New Revision: 1723874
URL: http://svn.apache.org/viewvc?rev=1723874&view=rev
Log:
PDFBOX-3186: at least one space
Modified:
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/COSParser.java
Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/COSParser.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/COSParser.java?rev=1723874&r1=1723873&r2=1723874&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/COSParser.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/COSParser.java Sat Jan 9 18:50:31 2016
@@ -1189,25 +1189,28 @@ public class COSParser extends BaseParse
}
// seek to offset-1
source.seek(startXRefOffset-1);
- // skip whitespaces
- skipSpaces();
- // next value has to be a digit
- if (isDigit())
+ int nextValue = source.read();
+ // the first character has to be whitespace(s), and then a digit
+ if (isWhitespace(nextValue))
{
- try
- {
- // it's a XRef stream
- readObjectNumber();
- readGenerationNumber();
- readExpectedString(OBJ_MARKER, true);
- source.seek(startXRefOffset);
- return startXRefOffset;
- }
- catch (IOException exception)
+ skipSpaces();
+ if (isDigit())
{
+ try
+ {
+ // it's a XRef stream
+ readObjectNumber();
+ readGenerationNumber();
+ readExpectedString(OBJ_MARKER, true);
+ source.seek(startXRefOffset);
+ return startXRefOffset;
+ }
+ catch (IOException exception)
+ {
// there wasn't an object of a xref stream
- // try to repair the offset
- source.seek(startXRefOffset);
+ // try to repair the offset
+ source.seek(startXRefOffset);
+ }
}
}
// try to find a fixed offset
@@ -1237,7 +1240,7 @@ public class COSParser extends BaseParse
LOG.debug("Fixed reference for xref table/stream " + objectOffset + " -> " + newOffset);
return newOffset;
}
- LOG.error("Can't find the object axref table/stream at offset " + objectOffset);
+ LOG.error("Can't find the object xref table/stream at offset " + objectOffset);
return 0;
}