Review Request for JDK-8003992: File and other classes in java.io do not handle embedded nulls properly

Dan Xu dan.xu at oracle.com
Wed Feb 27 02:31:37 UTC 2013


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




More information about the core-libs-dev mailing list