[
https://issues.apache.org/jira/browse/PDFBOX-2999?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14934324#comment-14934324
]
John Hewson commented on PDFBOX-2999:
-------------------------------------
I wrote this code very recently, prior to that, COSStream was a giant mess.
Please discuss far-reaching changes such as this before making them. Leave the
JIRA issue open for a day before committing code so that others get a chance to
see it. Consider attaching a patch and asking for others to look at it.
Why have you deferred the creation of this.randomAccess? What benefit does this
bring?
{quote}
- requesting an input stream without an corresponding output stream being
created before is not allowed (throw some kind of exception)
{quote}
That's just an empty stream and it's perfectly legal.
{quote}
- when a new output stream is requested, the previous randomAccess buffer will
be closed (which means any input stream being created on it must not be
accessed anymore - an IOException will be thrown otherwise)
{quote}
It's not possible to create multiple output streams, we already check for that
case and throw an exception ("Cannot have more than one open stream writer.").
The previous randomAccess buffer will _not_ be closed.
> Optimize COSStream scratch file usage
> -------------------------------------
>
> Key: PDFBOX-2999
> URL: https://issues.apache.org/jira/browse/PDFBOX-2999
> Project: PDFBox
> Issue Type: Improvement
> Components: PDModel
> Affects Versions: 2.0.0
> Reporter: Timo Boehme
> Assignee: Timo Boehme
>
> The usage of scratch file buffers in COSStreams is quite sloppy. A never
> filled buffer is created in the beginning and existing buffers are discarded
> without being closed when a variant of {{createOutputStream}} is called.
> Furthermore it should be clarified if requesting an input stream without
> having created an output stream before is ok and if a returned input stream
> keeps valid after a new output stream is created (which is crucial for proper
> buffer-closing).
> This issue should resolve some of the shortcomings and document the expected
> or even required usage of COSStream.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]