RFR: 6616245: NullPointerException when using JFileChooser with a custom FileView [v2]
Alexey Ivanov
aivanov at openjdk.org
Mon Oct 3 11:39:36 UTC 2022
On Mon, 3 Oct 2022 11:28:09 GMT, Tejesh R <tr at openjdk.org> wrote:
>> src/java.desktop/share/classes/javax/swing/plaf/metal/MetalFileChooserUI.java line 1271:
>>
>>> 1269: File curDir = getFileChooser().getCurrentDirectory();
>>> 1270:
>>> 1271: if (curDir != null && !curDir.equals(f)) {
>>
>> If `f` is always not null, you can you use `!f.equals(curDir)`.
>
>>
>
> Prevention of not setting to null means I have to modify `JFileChooser` class itself, so just handling here. And yeah` f `can't be null, can do that.
Why is it bad to modify `JFileChooser` class itself?
I think setting the current directory to `null` while it displays a directory kind of breaks the invariant.
`JFileChooser` navigated to a directory and the current directory is set to it. You tried navigating to another directory, `FileSystem` didn't allow the navigation, so `JFileChooser` continues to display the files in the directory that is showed before. Thus, the current directory hasn't changed. From this point of view, the current directory should remain unchanged.
-------------
PR: https://git.openjdk.org/jdk/pull/10485
More information about the client-libs-dev
mailing list