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()); + } }