pdfbox-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From til...@apache.org
Subject svn commit: r1831811 - /pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFMergerUtility.java
Date Thu, 17 May 2018 20:29:14 GMT
Author: tilman
Date: Thu May 17 20:29:14 2018
New Revision: 1831811

URL: http://svn.apache.org/viewvc?rev=1831811&view=rev
Log:
PDFBOX-4222: ignore all page labels if there is a bad entry (similar to Adobe Reader)

Modified:
    pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFMergerUtility.java

Modified: pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFMergerUtility.java
URL: http://svn.apache.org/viewvc/pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFMergerUtility.java?rev=1831811&r1=1831810&r2=1831811&view=diff
==============================================================================
--- pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFMergerUtility.java
(original)
+++ pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFMergerUtility.java
Thu May 17 20:29:14 2018
@@ -619,12 +619,18 @@ public class PDFMergerUtility
             COSArray srcNums = (COSArray) srcLabels.getDictionaryObject(COSName.NUMS);
             if (srcNums != null)
             {
+                int startSize = destNums.size();
                 for (int i = 0; i < srcNums.size(); i += 2)
                 {
                     COSBase base = srcNums.getObject(i);
                     if (!(base instanceof COSNumber))
                     {
-                        LOG.warn("page labels skipped at index " + i + ", should be a number,
but is " + base);
+                        LOG.error("page labels ignored, index " + i + " should be a number,
but is " + base);
+                        // remove what we added
+                        while (destNums.size() > startSize)
+                        {
+                            destNums.remove(startSize);
+                        }
                         break;
                     }
                     COSNumber labelIndex = (COSNumber) base;



Mime
View raw message