[
https://issues.apache.org/jira/browse/PDFBOX-6166?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18072933#comment-18072933
]
Andreas Lehmkühler commented on PDFBOX-6166:
--------------------------------------------
I've reimplemented "available" and "readFully" so that both don't rely on the
size value anymore.
I'm not sure what todo about "size". What about using "Math.max(size,
is.available())" It is still an estimated value, but an improvement compared to
the current implementation. WDYT?
> Improve some implementation flaws in NonSeekableRandomAccessReadInputStream
> ---------------------------------------------------------------------------
>
> Key: PDFBOX-6166
> URL: https://issues.apache.org/jira/browse/PDFBOX-6166
> Project: PDFBox
> Issue Type: Improvement
> Components: IO, Parsing
> Affects Versions: 3.0.6 PDFBox, 4.0.0
> Reporter: Andreas Lehmkühler
> Assignee: Andreas Lehmkühler
> Priority: Major
>
> [~tilman] found some flaws in the implementation of
> NonSeekableRandomAccessReadInputStream based on a posting from Daniel Gredler
> on the users mailinglist
> As NonSeekableRandomAccessReadInputStream is backed by an InputStream we have
> to think about the implementation of some methods as the length of the given
> inputStream isn't available at the beginning
> * length: the current implementation relies on the internal member "size"
> * available: the current default implementation relies on length()
> * readFully: the current default implementation relies on length()
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]