[
https://issues.apache.org/jira/browse/PDFBOX-2488?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14218174#comment-14218174
]
Tilman Hausherr commented on PDFBOX-2488:
-----------------------------------------
Guilty part:
{code}
1807 0 obj
<<
/Type /Font
/Subtype /Type1
/BaseFont /Times-Roman
/FirstChar 0
/LastChar 255
/Widths 1811 0 R
/FontDescriptor 1808 0 R
>>
endobj
1808 0 obj
<<
/Type /FontDescriptor
/FontBBox [ -168 -218 1000 898 ]
/Ascent 898
/Descent -218
/CapHeight 898
/ItalicAngle 0
/Flags 32
/StemV 0
/FontFile 1809 0 R
>>
endobj
{code}
/FontName is missing. This is checked elsewhere
(FontDescriptorHelper.checkMandatoryFields()), i.e. it is flagged as error. So
all we need to do is to add a null check in FontValidator.isSubSet().
> NPE in FontValidator.isSubSet in preflight
> ------------------------------------------
>
> Key: PDFBOX-2488
> URL: https://issues.apache.org/jira/browse/PDFBOX-2488
> Project: PDFBox
> Issue Type: Bug
> Components: Preflight
> Affects Versions: 2.0.0
> Reporter: Tilman Hausherr
> Attachments: 012368.pdf
>
>
> {code}
> java.lang.NullPointerException
> at
> org.apache.pdfbox.preflight.font.FontValidator.isSubSet(FontValidator.java:48)
> at
> org.apache.pdfbox.preflight.font.FontValidator.isSubSet(FontValidator.java:48)
> at
> org.apache.pdfbox.preflight.font.descriptor.Type1DescriptorHelper.checkMandatoryFields(Type1DescriptorHelper.java:59)
> at
> org.apache.pdfbox.preflight.font.descriptor.FontDescriptorHelper.validate(FontDescriptorHelper.java:96)
> at
> org.apache.pdfbox.preflight.font.SimpleFontValidator.processFontDescriptorValidation(SimpleFontValidator.java:121)
> at
> org.apache.pdfbox.preflight.font.SimpleFontValidator.validate(SimpleFontValidator.java:60)
> at
> org.apache.pdfbox.preflight.process.reflect.FontValidationProcess.validate(FontValidationProcess.java:73)
> at
> org.apache.pdfbox.preflight.utils.ContextHelper.callValidation(ContextHelper.java:73)
> at
> org.apache.pdfbox.preflight.utils.ContextHelper.validateElement(ContextHelper.java:52)
> at
> org.apache.pdfbox.preflight.process.reflect.ResourcesValidationProcess.validateFonts(ResourcesValidationProcess.java:98)
> at
> org.apache.pdfbox.preflight.process.reflect.ResourcesValidationProcess.validate(ResourcesValidationProcess.java:76)
> at
> org.apache.pdfbox.preflight.utils.ContextHelper.callValidation(ContextHelper.java:73)
> at
> org.apache.pdfbox.preflight.utils.ContextHelper.validateElement(ContextHelper.java:52)
> at
> org.apache.pdfbox.preflight.process.reflect.SinglePageValidationProcess.validateResources(SinglePageValidationProcess.java:167)
> at
> org.apache.pdfbox.preflight.process.reflect.SinglePageValidationProcess.validate(SinglePageValidationProcess.java:82)
> at
> org.apache.pdfbox.preflight.utils.ContextHelper.callValidation(ContextHelper.java:73)
> at
> org.apache.pdfbox.preflight.utils.ContextHelper.validateElement(ContextHelper.java:52)
> at
> org.apache.pdfbox.preflight.process.PageTreeValidationProcess.validatePage(PageTreeValidationProcess.java:56)
> at
> org.apache.pdfbox.preflight.process.PageTreeValidationProcess.validate(PageTreeValidationProcess.java:45)
> at
> org.apache.pdfbox.preflight.utils.ContextHelper.callValidation(ContextHelper.java:73)
> at
> org.apache.pdfbox.preflight.utils.ContextHelper.validateElement(ContextHelper.java:88)
> at
> org.apache.pdfbox.preflight.PreflightDocument.validate(PreflightDocument.java:168)
> at pdfboxpageimageextraction.PreflightTest.main(PreflightTest.java:41)
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)