[ 
https://issues.apache.org/jira/browse/PDFBOX-4666?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16980301#comment-16980301
 ] 

Tilman Hausherr edited comment on PDFBOX-4666 at 11/22/19 4:34 PM:
-------------------------------------------------------------------

Reopening: the recursion detection mechanism prevents the proper rendering of 
the flatten tests, which I found out while working on PDFBOX-4693. Some of the 
test files have the same resources object in the annotations and in the page so 
I'll have to revert the changes and come up with a better idea.


was (Author: tilman):
Reopening: the recursion detection mechanism from PDFBOX-4666 prevents the 
proper rendering of the flatten tests. Some of the test files have the same 
resources object in the annotations and in the page so I'll have to revert the 
changes and come up with a better idea.

> StackOverflowError with PDFTextStripper.getText()
> -------------------------------------------------
>
>                 Key: PDFBOX-4666
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-4666
>             Project: PDFBox
>          Issue Type: Bug
>          Components: Rendering
>    Affects Versions: 2.0.17
>            Reporter: Josh Wein
>            Assignee: Tilman Hausherr
>            Priority: Major
>              Labels: recursive
>             Fix For: 2.0.18, 3.0.0 PDFBox
>
>         Attachments: example.pdf
>
>
> Reproducible with the attached file
>  
> {code:java}
> File pdf = new File("example.pdf");
> PDDocument doc = PDDocument.load(pdf);
> new PDFTextStripper().getText(doc);
> {code}
>  
> {code:java}
> java.lang.StackOverflowErrorjava.lang.StackOverflowError at 
> java.util.zip.Inflater.<init>(Inflater.java:102) at 
> org.apache.pdfbox.filter.FlateFilter.decompress(FlateFilter.java:74) at 
> org.apache.pdfbox.filter.FlateFilter.decode(FlateFilter.java:50) at 
> org.apache.pdfbox.filter.Filter.decode(Filter.java:87) at 
> org.apache.pdfbox.cos.COSInputStream.create(COSInputStream.java:84) at 
> org.apache.pdfbox.cos.COSStream.createInputStream(COSStream.java:175) at 
> org.apache.pdfbox.cos.COSStream.createInputStream(COSStream.java:163) at 
> org.apache.pdfbox.pdmodel.graphics.form.PDFormXObject.getContents(PDFormXObject.java:144)
>  at 
> org.apache.pdfbox.pdfparser.PDFStreamParser.<init>(PDFStreamParser.java:92) 
> at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators(PDFStreamEngine.java:496)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:480)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.showForm(PDFStreamEngine.java:184)
>  at 
> org.apache.pdfbox.contentstream.operator.DrawObject.process(DrawObject.java:65)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:872)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators(PDFStreamEngine.java:506)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:480)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.showForm(PDFStreamEngine.java:184)
>  at 
> org.apache.pdfbox.contentstream.operator.DrawObject.process(DrawObject.java:65)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:872)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators(PDFStreamEngine.java:506)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:480)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.showForm(PDFStreamEngine.java:184)
>  at 
> org.apache.pdfbox.contentstream.operator.DrawObject.process(DrawObject.java:65)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:872)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators(PDFStreamEngine.java:506)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:480)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.showForm(PDFStreamEngine.java:184)
>  at 
> org.apache.pdfbox.contentstream.operator.DrawObject.process(DrawObject.java:65)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:872)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators(PDFStreamEngine.java:506)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:480)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.showForm(PDFStreamEngine.java:184)
>  at 
> org.apache.pdfbox.contentstream.operator.DrawObject.process(DrawObject.java:65)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:872)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators(PDFStreamEngine.java:506)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:480)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.showForm(PDFStreamEngine.java:184)
>  at 
> org.apache.pdfbox.contentstream.operator.DrawObject.process(DrawObject.java:65)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:872)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators(PDFStreamEngine.java:506)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:480)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.showForm(PDFStreamEngine.java:184)
> ...
>  at 
> org.apache.pdfbox.contentstream.operator.DrawObject.process(DrawObject.java:65)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:872)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators(PDFStreamEngine.java:506)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:480)
>  at 
> org.apache.pdfbox.contentstream.PDFStreamEngine.processPage(PDFStreamEngine.java:153)
>  at 
> org.apache.pdfbox.text.LegacyPDFStreamEngine.processPage(LegacyPDFStreamEngine.java:139)
>  at 
> org.apache.pdfbox.text.PDFTextStripper.processPage(PDFTextStripper.java:391) 
> at 
> org.apache.pdfbox.text.PDFTextStripper.processPages(PDFTextStripper.java:319) 
> at org.apache.pdfbox.text.PDFTextStripper.writeText(PDFTextStripper.java:266) 
> at 
> org.apache.pdfbox.text.PDFTextStripper.getText(PDFTextStripper.java:227){code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to