On 08/02/2018 17:35, yumin qi wrote:
Sure, but it's really hairy for anything to be depend on that. We can
improve the reliability by changing java.io.UnixFileSystem to read the
system property at most once. Second/subsequent usages should only need
to do a permission check (for the security manager case). Going further
then we need to get to the point where the APIs never read a modified
property, this goes for java.home and several others too.
As in your email to RFR of 8194154 which now has a new fix in
canonicalize_md.c, switch back to discuss solution here again.
The current fix is not in java, instead, I put it in C function. In
the function before the fix, it assumes no more "//" pattern in the
string so failed to get correct substrings with the case as the test case.
The fix should not cause other problem since it does double check if
double or more slashes in sequential.
The APIs indicates 'user.dir' etc system property should not be
rewritten, but did not prevent modifying them in practise.
I'll study the patch you have but I think we also need to create issues
to get us to the point where changing this system property in a running
VM doesn't impact running code.