[ 
https://issues.apache.org/jira/browse/PDFBOX-2347?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andreas Lehmkühler closed PDFBOX-2347.
--------------------------------------

> NPE while creating security handler for decryption
> --------------------------------------------------
>
>                 Key: PDFBOX-2347
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-2347
>             Project: PDFBox
>          Issue Type: Bug
>          Components: Parsing
>    Affects Versions: 1.8.6, 1.8.7, 2.0.0
>            Reporter: Tilman Hausherr
>            Assignee: Tilman Hausherr
>              Labels: Encryption
>             Fix For: 1.8.7, 2.0.0
>
>         Attachments: PDFBOX-2347-263071.pdf
>
>
> The attached file has a NPE with the non sequential parser only:
> {code}
> Exception in thread "main" java.io.IOException: Error (NullPointerException) 
> while creating security handler for decryption
>         at 
> org.apache.pdfbox.pdfparser.NonSequentialPDFParser.initialParse(NonSe
> quentialPDFParser.java:493)
>         at 
> org.apache.pdfbox.pdfparser.NonSequentialPDFParser.parse(NonSequentialPDFParser.java:794)
>         at 
> org.apache.pdfbox.pdmodel.PDDocument.loadNonSeq(PDDocument.java:1156)
>         at 
> org.apache.pdfbox.pdmodel.PDDocument.loadNonSeq(PDDocument.java:1139)
>         at org.apache.pdfbox.tools.PDFToImage.main(PDFToImage.java:197)
>         at org.apache.pdfbox.tools.PDFBox.main(PDFBox.java:89)
> Caused by: java.lang.NullPointerException
>         at 
> org.apache.pdfbox.pdmodel.encryption.PDEncryption.getFilter(PDEncrypt
> ion.java:159)
>         at 
> org.apache.pdfbox.pdmodel.encryption.PDEncryption.<init>(PDEncryption.java:96)
>         at 
> org.apache.pdfbox.pdfparser.NonSequentialPDFParser.initialParse(NonSe
> quentialPDFParser.java:464)
> {code}
> The file has this:
> {code}
> trailer
> <<
> /Size
> 53
> /Info
> 29 0 R
> /Encrypt
> null
> /Root
> 35 0 R
> /Prev
> 256729
> /ID
> [
> <f571e5c0c658cb76cfe7ad0662f8f6a1>
> <1c11ae9224c83622f7682d9e00bd2581>
> ]
> >>
> {code}
> so the encryption item is COSNull which is not the same as "null" when using 
> getItem(). So the solution is to use getDictionaryObject() instead, because 
> it checks for COSNull. This method is already used elsewhere in PDFBox to get 
> /Encrypt.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to