Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
3.0.1 PDFBox, 4.0.0
-
None
Description
This happens with the broken file from PDFBOX-5782 when this code is run:
PDDocument doc = Loader.loadPDF(new File("PDFBOX-5782.pdf")); PDFRenderer r = new PDFRenderer(doc); r.renderImage(0); doc.save(OutputStream.nullOutputStream());
Exception in thread "main" java.lang.NullPointerException at java.base/java.util.Hashtable.put(Hashtable.java:475) at org.apache.pdfbox.pdfwriter.COSWriter.getObjectKey(COSWriter.java:1082) at org.apache.pdfbox.pdfwriter.COSWriter.writeReference(COSWriter.java:1391) at org.apache.pdfbox.pdfwriter.COSWriter.visitFromDictionary(COSWriter.java:1231) at org.apache.pdfbox.pdfwriter.COSWriter.writeDictionary(COSWriter.java:1179) at org.apache.pdfbox.pdfwriter.COSWriter.visitFromDictionary(COSWriter.java:1226) at org.apache.pdfbox.pdfwriter.COSWriter.writeDictionary(COSWriter.java:1179) at org.apache.pdfbox.pdfwriter.COSWriter.visitFromDictionary(COSWriter.java:1226) at org.apache.pdfbox.pdfwriter.COSWriter.visitFromStream(COSWriter.java:1413) at org.apache.pdfbox.cos.COSStream.accept(COSStream.java:381) at org.apache.pdfbox.pdfwriter.COSWriter.doWriteObject(COSWriter.java:606) at org.apache.pdfbox.pdfwriter.COSWriter.doWriteBodyCompressed(COSWriter.java:492) at org.apache.pdfbox.pdfwriter.COSWriter.visitFromDocument(COSWriter.java:1319) at org.apache.pdfbox.cos.COSDocument.accept(COSDocument.java:429) at org.apache.pdfbox.pdfwriter.COSWriter.write(COSWriter.java:1593) at org.apache.pdfbox.pdfwriter.COSWriter.write(COSWriter.java:1469) at org.apache.pdfbox.pdmodel.PDDocument.save(PDDocument.java:1044) at org.apache.pdfbox.pdmodel.PDDocument.save(PDDocument.java:968)
It does not happen if r.renderImage(0); is removed.