You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pdfbox.apache.org by "Tilman Hausherr (Jira)" <ji...@apache.org> on 2021/11/05 18:07:00 UTC
[jira] [Comment Edited] (PDFBOX-5313) `NullPointerException` when
intersecting area with null clipping path
[ https://issues.apache.org/jira/browse/PDFBOX-5313?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17439409#comment-17439409 ]
Tilman Hausherr edited comment on PDFBOX-5313 at 11/5/21, 6:06 PM:
-------------------------------------------------------------------
Thanks for reporting this. I suspect that in your file a shading is done immediately after another shading, or at as the first operation. Because these were the two occurrences where the clip might be null. I have fixed the second one too, although it has no effect on test files.
was (Author: tilman):
Thanks for reporting this. I suspect that a shading is done immediately after another shading, or at first. Because these were the two occurences where the clip might be null. I have fixed the second one too, although it has no effect on test files.
> `NullPointerException` when intersecting area with null clipping path
> ---------------------------------------------------------------------
>
> Key: PDFBOX-5313
> URL: https://issues.apache.org/jira/browse/PDFBOX-5313
> Project: PDFBox
> Issue Type: Bug
> Components: Rendering
> Affects Versions: 2.0.24
> Reporter: Henry Iguaro
> Assignee: Tilman Hausherr
> Priority: Minor
> Fix For: 2.0.25, 3.0.0 PDFBox
>
>
> Hey guys!
> We got a PDF that manages to trigger the following NPE from {{PageDrawer}}:
>
> {code:java}
>
> java.lang.NullPointerException: null
> at java.desktop/java.awt.geom.Area.<init>(Area.java:126)
> at org.apache.pdfbox.rendering.PageDrawer.fillPath(PageDrawer.java:900)
> at org.apache.pdfbox.contentstream.operator.graphics.FillNonZeroRule.process(FillNonZeroRule.java:37)
> at org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:933)
>
> {code}
>
> The file even breaks on {{pdf-debugger}} (it fails to render).
>
> *Unfortunately, I can’t share the file.*
> Looking at the documentation for [{{Graphics.getClip()}}|https://docs.oracle.com/javase/6/docs/api/java/awt/Graphics.html#getClip()], it mentions that the result can be {{null}}, and if {{null}} is passed to the {{Area}} constructor this ends up in a {{NullPointerException}}. Further studying the {{PageDrawer}} code, it seems that {{graphics.getClip()}} shouldn't return {{null}}, however, we proposed a small fix in the following PR that seems to do the trick:
> [https://github.com/apache/pdfbox/pull/133]
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@pdfbox.apache.org
For additional commands, e-mail: dev-help@pdfbox.apache.org