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 2014/02/22 14:57:16 UTC

svn commit: r1570841 - /pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/NonSequentialPDFParser.java

Author: tilman
Date: Sat Feb 22 13:57:16 2014
New Revision: 1570841

URL: http://svn.apache.org/r1570841
Log:
PDFBOX-1811: don't fail, but put a warning if the parser is lenient and  object doesn't end with "endobj" but with the start of a new " obj"

Modified:
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/NonSequentialPDFParser.java

Modified: pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/NonSequentialPDFParser.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/NonSequentialPDFParser.java?rev=1570841&r1=1570840&r2=1570841&view=diff
==============================================================================
--- pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/NonSequentialPDFParser.java (original)
+++ pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/NonSequentialPDFParser.java Sat Feb 22 13:57:16 2014
@@ -1342,8 +1342,16 @@ public class NonSequentialPDFParser exte
 
                 if (!endObjectKey.startsWith("endobj"))
                 {
-                    throw new IOException("Object (" + readObjNr + ":" + readObjGen + ") at offset "
-                            + offsetOrObjstmObNr + " does not end with 'endobj'.");
+                    if (endObjectKey.endsWith(" obj") && isLenient)
+                    {
+                        LOG.warn("Object (" + readObjNr + ":" + readObjGen + ") at offset "
+                                + offsetOrObjstmObNr + " does not end with 'endobj' but with '" + endObjectKey + "'");
+                    }
+                    else
+                    {
+                        throw new IOException("Object (" + readObjNr + ":" + readObjGen + ") at offset "
+                                + offsetOrObjstmObNr + " does not end with 'endobj' but with '" + endObjectKey + "'");
+                    }
                 }
 
                 releasePdfSourceInputStream();