You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by le...@apache.org on 2017/09/28 17:42:42 UTC
svn commit: r1810018 -
/pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/COSParser.java
Author: lehmi
Date: Thu Sep 28 17:42:41 2017
New Revision: 1810018
URL: http://svn.apache.org/viewvc?rev=1810018&view=rev
Log:
PDFBOX-3934: skip trailing spaces
Modified:
pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/COSParser.java
Modified: pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/COSParser.java
URL: http://svn.apache.org/viewvc/pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/COSParser.java?rev=1810018&r1=1810017&r2=1810018&view=diff
==============================================================================
--- pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/COSParser.java (original)
+++ pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/COSParser.java Thu Sep 28 17:42:41 2017
@@ -1743,11 +1743,19 @@ public class COSParser extends BaseParse
int nrOfObjects = dict.getInt(COSName.N);
COSStream stream = parseCOSStream(dict);
COSInputStream is = stream.createInputStream();
- byte[] numbersStr = new byte[offsetFirstStream];
- is.read(numbersStr);
+ byte[] numbersBytes = new byte[offsetFirstStream];
+ is.read(numbersBytes);
is.close();
stream.close();
- String[] numbers = new String(numbersStr, "ISO-8859-1").split(" ");
+ int start = 0;
+ // skip spaces
+ while (numbersBytes[start] == 32)
+ {
+ start++;
+ }
+ String numbersStr = new String(numbersBytes, start, numbersBytes.length - start,
+ "ISO-8859-1");
+ String[] numbers = numbersStr.split(" ");
for (int i = 0; i < nrOfObjects; i++)
{
long objNumber = Long.parseLong(numbers[i * 2]);