RFR: 8320971: Use BufferedInputStream.buf directly when param of implTransferTo() is trusted [v15]
Brian Burkhalter
bpb at openjdk.org
Thu Dec 14 23:06:44 UTC 2023
On Thu, 14 Dec 2023 08:47:03 GMT, Sergey Tsypanov <stsypanov at openjdk.org> wrote:
>> It looks like we can skip copying of `byte[]` in `BufferedInputStream.implTransferTo()` for `OutputStreams` residing in `java.io`.
>>
>> See comment by @vlsi in https://github.com/openjdk/jdk/pull/10525/files#diff-e19c508d1bb6ee78697ecca66947c395adda0d9c49a85bf696e677ecbd977af1R612
>
> Sergey Tsypanov has updated the pull request incrementally with one additional commit since the last revision:
>
> 8320971: Revert irrelevant changes
src/java.base/share/classes/java/io/BufferedInputStream.java line 646:
> 644: int avail = count - pos;
> 645: if (avail > 0) {
> 646: if (isTrusted(out)) {
It might be cleaner for now to drop `isTrusted()` and just do the class check explicitly here. That still takes care of the main intent of not passing the buffer to an untrustworthy stream. Further cleanup and consolidation can be done later.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/16879#discussion_r1427391530
More information about the core-libs-dev
mailing list