Thank you, Mike.
The reason not to throw out an exception is for the backward
compatibility. Due to that, the constructorof File object with NUL
willnever fail.While in NIO, it is defined in the spec to throw out
exceptions when invalid NUL character is found.
-Dan
On 02/26/2013 04:33 PM, Mike Duigou wrote:
Hi Dan;
External link to the bug (will hopefully work soon):
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=8003992
I would like to better understand why silently removing the garbage null
characters is the right answer here.
If null is an invalid character for the underlying operating system or
filesystem then perhaps an error should be signalled.
Mike
On Feb 26 2013, at 16:10 , Dan Xu wrote:
Hi All,
Please help review the fix for JDK-8003992: File and other classes in java.io
do not handle embedded nulls properly.
Java IO, not like NIO, does not check NUL character in the given file path
name, which brings confusion to Java users. This fix is going to address this
issue by removing any NUL character from the given file path. And it also
cleans and optimizes the path-name normalization logic. Thanks!
Bug: https://jbs.oracle.com/bugs/browse/JDK-8003992
webrev: http://cr.openjdk.java.net/~dxu/8003992/webrev.00/
-Dan