Author: tallison
Date: Mon May  1 18:19:09 2017
New Revision: 1793388

URL: http://svn.apache.org/viewvc?rev=1793388&view=rev
Log: (empty)

Modified:
    
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDDocumentCatalog.java
    
pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/TestPDDocumentCatalog.java

Modified: 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDDocumentCatalog.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDDocumentCatalog.java?rev=1793388&r1=1793387&r2=1793388&view=diff
==============================================================================
--- 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDDocumentCatalog.java
 (original)
+++ 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/PDDocumentCatalog.java
 Mon May  1 18:19:09 2017
@@ -22,6 +22,7 @@ import java.util.List;
 
 import org.apache.pdfbox.cos.COSArray;
 import org.apache.pdfbox.cos.COSBase;
+import org.apache.pdfbox.cos.COSBoolean;
 import org.apache.pdfbox.cos.COSDictionary;
 import org.apache.pdfbox.cos.COSName;
 import org.apache.pdfbox.cos.COSObject;
@@ -248,6 +249,17 @@ public class PDDocumentCatalog implement
         {
             return null;
         }
+        else if (openAction instanceof COSBoolean)
+        {
+            if (((COSBoolean) openAction).getValue() == false)
+            {
+                return null;
+            }
+            else
+            {
+                throw new IOException("Can't create OpenAction from 
COSBoolean");
+            }
+        }
         else if (openAction instanceof COSDictionary)
         {
             return PDActionFactory.createAction((COSDictionary)openAction);

Modified: 
pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/TestPDDocumentCatalog.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/TestPDDocumentCatalog.java?rev=1793388&r1=1793387&r2=1793388&view=diff
==============================================================================
--- 
pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/TestPDDocumentCatalog.java
 (original)
+++ 
pdfbox/trunk/pdfbox/src/test/java/org/apache/pdfbox/pdmodel/TestPDDocumentCatalog.java
 Mon May  1 18:19:09 2017
@@ -20,9 +20,11 @@ import java.io.IOException;
 import java.io.InputStream;
 import java.util.List;
 
+import org.apache.pdfbox.cos.COSName;
 import org.apache.pdfbox.pdmodel.graphics.color.PDOutputIntent;
 
 import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNull;
 import static org.junit.Assert.assertTrue;
 
 import org.junit.Test;
@@ -189,4 +191,13 @@ public class TestPDDocumentCatalog
             }
         }
     }
+
+    @Test
+    public void testBooleaninOpenAction() throws IOException
+    {
+        //PDFBOX-3772 -- allow for COSBoolean
+        PDDocument doc = new PDDocument();
+        
doc.getDocumentCatalog().getCOSObject().setBoolean(COSName.OPEN_ACTION, false);
+        assertNull(doc.getDocumentCatalog().getOpenAction());
+    }
 }


Reply via email to