Details
Description
sun.nio.fs.WindowsPath::getPathForWin32Calls synchronizes on 'path' field, which is a String object:
if (type != WindowsPathType.DRIVE_RELATIVE) {
synchronized (path) {
pathForWin32Calls = new WeakReference<String>(resolved);
}
}
this might lead to a deadlock, this code should synchronize on "this".
if (type != WindowsPathType.DRIVE_RELATIVE) {
synchronized (path) {
pathForWin32Calls = new WeakReference<String>(resolved);
}
}
this might lead to a deadlock, this code should synchronize on "this".