RFR: 8307105: JFileChooser InvalidPathException when selecting some system folders on Windows [v3]
Alexey Ivanov
aivanov at openjdk.org
Fri May 26 14:53:56 UTC 2023
On Fri, 26 May 2023 14:38:54 GMT, Tejesh R <tr at openjdk.org> wrote:
>>> So now two modifications are required.
>>>
>>> 1. Modify `isLink` of win32ShellFolder class to return true only if its `.lnk`.
>>
>> This should be enough to fix this bug.
>>
>> This should enable the support for Windows junctions too.
>>
>>> 2. isFileSystem of FileSystemView to return true only if its valid fileSystem, except isLink which actually solves the problem of isFileSystem returning false for links (hard/soft).
>>
>> This is automatically resolved by the first change.
>>
>> Currently, `isFileSystem` returns `false` when both `isLink` and `isDirectory` return `true`, which is the case for symbolic links and junctions.
>>
>> Then you have to remove the additional conditions that you added in [JDK-8281966](https://bugs.openjdk.org/browse/JDK-8281966).
>
> Yeah, this should do the work.
To re-iterate:
> Currently, `isFileSystem` returns `false` when both `isLink` and `isDirectory` return `true`, which is the case for symbolic links and junctions.
This is the root cause why symbolic links need special handling.
So, if you make `isLink` return `false` for symbolic links and junctions, `isFileSystem` will return `true`. That's what we want: neither symbolic links nor junctions need special handling.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/13998#discussion_r1206905684
More information about the client-libs-dev
mailing list