[
https://issues.apache.org/jira/browse/PDFBOX-5795?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17833175#comment-17833175
]
Daniel Persson commented on PDFBOX-5795:
----------------------------------------
Hi [~tilman]
Seems reasonable. I've tried it, and it seems to work just fine visually. And
anyway, my patch would have needed a null pointer check as well, so we don't
introduce that error. I vote for your suggestion.
Best regards
Daniel
> Crash for Softmask with incorrect backdrop color components
> -----------------------------------------------------------
>
> Key: PDFBOX-5795
> URL: https://issues.apache.org/jira/browse/PDFBOX-5795
> Project: PDFBox
> Issue Type: Bug
> Components: Rendering
> Affects Versions: 2.0.31, 3.0.2 PDFBox
> Reporter: Daniel Persson
> Priority: Major
> Attachments: borsen-2065-20111030-1-p4.pdf, crashfix.patch
>
>
> This error occured in our production of an old archive. None of the files
> crashed in any other viewer (Chrome, Adobe, Firefox, Poppler a.s.o).
>
> I've read up on the subject in the 1.7 specification, and it seems like
> PDFBox is following the specification, but not being able to open these files
> seems a bit too strict.
>
> The easiest way to reproduce is just to open the attached file with the
> debugger.
> {code:java}
> java -jar debugger-app-4.0.0-SNAPSHOT.jar borsen-2065-20111030-1-p4.pdf {code}
> The application will crash with this exception:
> {code:java}
> Caused by: java.lang.ArrayIndexOutOfBoundsException: Index 1 out of bounds
> for length 1
> org.apache.pdfbox.pdmodel.graphics.color.PDColor.toRGB(PDColor.java:155)
>
> org.apache.pdfbox.rendering.PageDrawer$TransparencyGroup.<init>(PageDrawer.java:1696)
>
> org.apache.pdfbox.rendering.PageDrawer$TransparencyGroup.<init>(PageDrawer.java:1573)
>
> org.apache.pdfbox.rendering.PageDrawer.applySoftMaskToPaint(PageDrawer.java:604)
>
> org.apache.pdfbox.rendering.PageDrawer.showTransparencyGroupOnGraphics(PageDrawer.java:1549)
>
> org.apache.pdfbox.rendering.PageDrawer.showTransparencyGroup(PageDrawer.java:1489)
>
> org.apache.pdfbox.contentstream.operator.graphics.DrawObject.process(DrawObject.java:81)
>
> org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:872)
>
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators(PDFStreamEngine.java:511)
>
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:489)
>
> org.apache.pdfbox.contentstream.PDFStreamEngine.processPage(PDFStreamEngine.java:158)
> org.apache.pdfbox.rendering.PageDrawer.drawPage(PageDrawer.java:270)
> org.apache.pdfbox.rendering.PDFRenderer.renderImage(PDFRenderer.java:346)
>
> org.apache.pdfbox.debugger.pagepane.PagePane$RenderWorker.doInBackground(PagePane.java:527)
>
> org.apache.pdfbox.debugger.pagepane.PagePane$RenderWorker.doInBackground(PagePane.java:506)
> java.base/java.lang.Thread.run(Thread.java:833)
> {code}
> My solution, added as a patch, is to add a fallback to the colorspace
> available in the graphical context. This is working for the files I've tried
> so far.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]