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 2016/03/30 18:29:07 UTC

svn commit: r1737130 - in /pdfbox/trunk: pdfbox/src/main/java/org/apache/pdfbox/pdfparser/COSParser.java preflight/src/main/java/org/apache/pdfbox/preflight/parser/PreflightParser.java

Author: lehmi
Date: Wed Mar 30 16:29:07 2016
New Revision: 1737130

URL: http://svn.apache.org/viewvc?rev=1737130&view=rev
Log:
PDFBOX-3295: compare the object stream index instead of simply checking if it exists

Modified:
    pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/COSParser.java
    pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/parser/PreflightParser.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=1737130&r1=1737129&r2=1737130&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 Wed Mar 30 16:29:07 2016
@@ -840,7 +840,8 @@ public class COSParser extends BaseParse
             for (COSObject next : parser.getObjects())
             {
                 COSObjectKey stmObjKey = new COSObjectKey(next);
-                if (xrefTrailerResolver.getXrefTable().containsKey(stmObjKey))
+                Long offset = xrefTrailerResolver.getXrefTable().get(stmObjKey); 
+                if (offset != null && offset == -objstmObjNr)
                 {
                     COSObject stmObj = document.getObjectFromPool(stmObjKey);
                     stmObj.setObject(next.getObject());

Modified: pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/parser/PreflightParser.java
URL: http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/parser/PreflightParser.java?rev=1737130&r1=1737129&r2=1737130&view=diff
==============================================================================
--- pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/parser/PreflightParser.java (original)
+++ pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/parser/PreflightParser.java Wed Mar 30 16:29:07 2016
@@ -833,7 +833,8 @@ public class PreflightParser extends PDF
                     for (COSObject next : parser.getObjects())
                     {
                         COSObjectKey stmObjKey = new COSObjectKey(next);
-                        if (xrefTrailerResolver.getXrefTable().containsKey(stmObjKey))
+                        Long offset = xrefTrailerResolver.getXrefTable().get(stmObjKey); 
+                        if (offset != null && offset == -objstmObjNr)
                         {
                             COSObject stmObj = document.getObjectFromPool(stmObjKey);
                             stmObj.setObject(next.getObject());