Hi All,

 

Please review a fix for bug:

Bug: JDK-8194044 : https://bugs.openjdk.java.net/browse/JDK-8194044

Webrev: http://cr.openjdk.java.net/~kaddepalli/8194044/webrev00/

 

This was caused due to the fix for JDK-8175015, in which the line 446  in 
Win32ShellFolderManager2.java was changed from "getDrives()" to 
Win32ShellFolder2.listRoots().

While the earlier function returns an object of Win32ShellFolder2, the latter 
returns an array of Files. 

The condition on line 450: "return (sf.isFileSystem()&&sf.parent != null && 
sf.parent.equals(Win32ShellFolder2.listRoots())" was returning false because of 
the wrong object being passed. Earlier it was a Win32ShellFolder2 object, and 
the comparision was done properly, but with the changes, the equals fucnction 
was receiving a file array object, and hence it was immediately returning 
false, leading to the problem of empty strings being shown for Root drives.

The fix is to replace "Win32ShellFolder2.listRoots()" with "getDrives()" 
function. With this fix, the regression is addressed, as well as the original 
JDK-8175015 which was a memory leak issue.

 

Thanks,

Krishna

Reply via email to