RFR: 8159055: ImageIcon.setImage can't handle null parameter [v18]

Phil Race prr at openjdk.org
Thu Jul 24 18:59:58 UTC 2025


On Wed, 23 Jul 2025 08:43:33 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 one additional commit since the last revision:
> 
>   Remove unneeded vars

src/java.desktop/share/classes/javax/swing/ImageIcon.java line 68:

> 66:  * no exceptions will be thrown but the image will be 'effectively' null,
> 67:  * as it will have no dimensions and never be drawn, and
> 68:  * getImageLoadStatus() will report {@see java.awt.MediaTracker#ERRORED}.

{@code getImageLoadStatus()}

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/25767#discussion_r2229319014


More information about the client-libs-dev mailing list