RFR: 8305947: SequenceInputStream implementation can use an Iterator rather than Enumeration
Jens Lidestrom
duke at openjdk.org
Fri Jun 9 07:27:09 UTC 2023
On Mon, 19 Dec 2022 11:26:25 GMT, Romain Manni-Bucau <duke at openjdk.org> wrote:
> enumeration(list) will create an enumeration, a list and an iterator whereas the impl only requires an iterator
> this PR drops the enumeration wrapper for binary constructor and just maps the enumeration to an iterator for the other case which should be a better compromise in practise.
>
> Another side but nice effect is to have some lighter classloading (subgraph)
src/java.base/share/classes/java/io/SequenceInputStream.java line 82:
> 80: */
> 81: public SequenceInputStream(InputStream s1, InputStream s2) {
> 82: this(List.of(s1, s2).iterator());
This changes the behaviour for null streams. This line will throw NPE. The previous code throwed NPE in `peekNextStream`, only if the stream was used.
Have your make sure that it is okay to change behaviour?
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/11718#discussion_r1162428158
More information about the core-libs-dev
mailing list