8228392: java.io.Filter{In,Out}put stream constructors should allow null stream parameter

Alan Bateman Alan.Bateman at oracle.com
Fri Jul 19 06:20:19 UTC 2019


On 18/07/2019 20:01, Brian Burkhalter wrote:
> https://bugs.openjdk.java.net/browse/JDK-8228392
> http://cr.openjdk.java.net/~bpb/8228392/webrev.00/
>
> This moves the NPE from the Filter{In,Out}putStream constructors to the subclass constructors.
>
> One thing which should be considered as an alternative would be not to check for null at all in these constructors but update the subclass constructor specifications to override the class documentation and indicate that the underlying stream parameter may be null.
>
> This change has passed the tier 1-3 tests modulo one timeout of an unrelated tier 2 test.
>
Can we split this one into two issues - one to revert JDK-8067801 as the 
JDK 14 is badly broken due to this change, the second to re-examine the 
original issue as that will take time to figure out the compatibility 
impact (e.g. the current patch retrofits several 20+ year classes to 
throw NPE and this will likely break existing code or require a spec 
change to align the spec with long standing behavior).

-Alan


More information about the core-libs-dev mailing list