RFR (M) 8191521: handle long relative path specified in -Xbootclasspath/a on windows

Schmelter, Ralf ralf.schmelter at sap.com
Tue Jul 23 10:11:23 UTC 2019

Hi David,

the problems fixed with this change only exist in the hotspot
code, not the JDK code, which is much different.

The new code Is much closer to the JDK code (see pathToNTPath()
in io_util_md.cpp). It always uses Unicode and _wfullpath() to 
normalize the path, while the old code never used _wfullpath().

The difference of the new code to the JDK code is mostly the missing
optimization for small paths which would not need to be prefixed with
\\?. We always call (except for path already prefixed with \\?) 
_wfullpath(), which will make a path absolute (if not already) and 
resolves all .. and . parts, so the result is safe to be prefixed with \\?.

Best regards,

More information about the hotspot-runtime-dev mailing list