RFR: 8159055: Clarify handling of null and invalid image data for ImageIcon constructors and setImage method [v24]
Phil Race
prr at openjdk.org
Tue Jul 29 19:00:09 UTC 2025
On Tue, 29 Jul 2025 14:13:39 GMT, Prasanta Sadhukhan <psadhukhan at openjdk.org> wrote:
>> When trying to call 'icon.setImage(null);' where 'icon' is an instance of ImageIcon, a null pointer exception is thrown at runtime.
>> The code tried to get the `id` for that image and instantiates `MediaTracker` to associate the null image to that `id` and checks the status of loading this null image, removes the null image from the tracker and then tries to get the image width where it throws NPE as image is null.
>>
>> It's better to not go through all MediaTracker usage and bail out initially itself for null image..
>
> Prasanta Sadhukhan has updated the pull request incrementally with three additional commits since the last revision:
>
> - Modify summary
> - Modify summary
> - Remove redundant fileName param
src/java.desktop/share/classes/javax/swing/ImageIcon.java line 68:
> 66: * If the image source parameter to a constructor or method is non-null,
> 67: * but does not reference valid accessible image data,
> 68: * no exceptions will be thrown but the image will be unset,
"will behave as if unset" ?
or maybe
"will behave as if uninitialized " ?
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/25767#discussion_r2240693577
More information about the client-libs-dev
mailing list