pdfbox-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From til...@apache.org
Subject svn commit: r1844157 - /pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/COSParser.java
Date Wed, 17 Oct 2018 19:56:02 GMT
Author: tilman
Date: Wed Oct 17 19:56:02 2018
New Revision: 1844157

URL: http://svn.apache.org/viewvc?rev=1844157&view=rev
Log:
PDFBOX-4352: avoid NullPointerException

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=1844157&r1=1844156&r2=1844157&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 Wed
Oct 17 19:56:02 2018
@@ -326,7 +326,7 @@ public class COSParser extends BaseParse
                 parseXrefTable(prev);
                 if (!parseTrailer())
                 {
-                    throw new IOException("Expected trailer object at position: "
+                    throw new IOException("Expected trailer object at offset "
                             + source.getPosition());
                 }
                 COSDictionary trailer = xrefTrailerResolver.getCurrentTrailer();
@@ -2497,7 +2497,7 @@ public class COSParser extends BaseParse
                 if (source.getPosition() == trailerOffset)
                 {
                     // warn only the first time
-                    LOG.warn("Expected trailer object at position " + trailerOffset
+                    LOG.warn("Expected trailer object at offset " + trailerOffset
                             + ", keep trying");
                 }
                 readLine();
@@ -2916,6 +2916,13 @@ public class COSParser extends BaseParse
     private void parseDictionaryRecursive(COSObject dictionaryObject) throws IOException
     {
         parseObjectDynamically(dictionaryObject, true);
+        if (dictionaryObject.getObject() == null)
+        {
+            // we can't be lenient here, this is called by prepareDecryption()
+            // to get the encryption directory
+            throw new IOException("Dictionary object " + dictionaryObject +
+                    " is null at offset " + source.getPosition());
+        }
         COSDictionary dictionary = (COSDictionary) dictionaryObject.getObject();
         for (COSBase value : dictionary.getValues())
         {



Mime
View raw message