Author: lehmi
Date: Sun Oct 25 12:36:58 2015
New Revision: 1710438

URL: http://svn.apache.org/viewvc?rev=1710438&view=rev
Log:
PDFBOX-3060: add type value "Catalog" to root dictionary if missing

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

Modified: 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/PDFParser.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/PDFParser.java?rev=1710438&r1=1710437&r2=1710438&view=diff
==============================================================================
--- 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/PDFParser.java 
(original)
+++ 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/PDFParser.java 
Sun Oct 25 12:36:58 2015
@@ -195,8 +195,12 @@ public class PDFParser extends COSParser
         // prepare decryption if necessary
         prepareDecryption();
     
-        parseTrailerValuesDynamically(trailer);
-    
+        COSDictionary root = 
(COSDictionary)parseTrailerValuesDynamically(trailer);
+        // in some pdfs the type value "Catalog" is missing in the root object
+        if (isLenient() && !root.containsKey(COSName.TYPE))
+        {
+            root.setItem(COSName.TYPE, COSName.CATALOG);
+        }
         COSObject catalogObj = document.getCatalog();
         if (catalogObj != null && catalogObj.getObject() instanceof 
COSDictionary)
         {


Reply via email to