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 2018/08/07 16:08:38 UTC

svn commit: r1837605 - /pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/COSParser.java

Author: tilman
Date: Tue Aug  7 16:08:38 2018
New Revision: 1837605

URL: http://svn.apache.org/viewvc?rev=1837605&view=rev
Log:
PDFBOX-4288: don't add objects that are already fully parsed and are ignored later, as suggested by Hee Jeong Kim

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=1837605&r1=1837604&r2=1837605&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 Tue Aug  7 16:08:38 2018
@@ -600,7 +600,9 @@ public class COSParser extends BaseParse
 
     /**
      * Adds newObject to toBeParsedList if it is not an COSObject or we didn't
-     * add this COSObject already (checked via addedObjects).
+     * add this COSObject already (checked via addedObjects). Simple objects are
+     * not added because nothing is done with them when toBeParsedList is
+     * processed.
      */
     private void addNewToList(final Queue<COSBase> toBeParsedList, final COSBase newObject,
             final Set<Long> addedObjects)
@@ -612,8 +614,12 @@ public class COSParser extends BaseParse
             {
                 return;
             }
+            toBeParsedList.add(newObject);
+        }
+        else if (newObject instanceof COSDictionary || newObject instanceof COSArray)
+        {
+            toBeParsedList.add(newObject);
         }
-        toBeParsedList.add(newObject);
     }
 
     /**