Hi Sergey,

Yes, after the fix filedialog produces usual filesystem paths for libraries which are readable for java.io. But there are no possibility to reference files in libraries directly using new File(<library link>).

--Semyon

On 5/7/2015 11:26 AM, Sergey Bylokhov wrote:
Hi, Semyon.
Can you please raise the supportness of this in the java.io on the core-libs alias.
Does the open filedialog will work after the fix?

On 07.05.15 11:14, Semyon Sadetsky wrote:
Hello,

Please review fix for JDK9.
webrev: http://cr.openjdk.java.net/~ssadetsky/8003399/webrev.00/
bug: https://bugs.openjdk.java.net/browse/JDK-8003399

***THE ROOT CAUSE
JDK uses legacy WINAPI special folders calls while MS introduced a new interfaces IKnownFolder and IShellLibrary to manage special folder locations and the new Libraries functionality in Windows 7 is not backward compatible with old special folders CSIDL.

***SOLUTION
Since it is too expensive to migrate AWT shell to the new interfaces and still they are not supported in java.io the solution is to map virtual folder PIDL to the Known Folder GUID and replace libraries links with the default library save location. Thus the File save dialog will be able to work with any Libraries registered in the system (Windows Libraries concept assumes that Libraries can be added arbitrary). The resulting code should be compatible with older Windows versions because the new COM interfaces are called only if they are available and a Libraries link has been actually requested.

***TESTING
A test scenario is added to check that all available Libraries links are converted into filesystem paths.

--Semyon




Reply via email to