From a0cdf36bdfeca9cd8b669859700d63d5ee627458 Mon Sep 17 00:00:00 2001 From: Andrey Turbanov Date: Wed, 21 May 2025 08:39:43 +0000 Subject: [PATCH] 8357224: Avoid redundant WeakHashMap.get in Toolkit.removeAWTEventListener Reviewed-by: liach, aivanov, serb --- src/java.desktop/share/classes/java/awt/Toolkit.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/java.desktop/share/classes/java/awt/Toolkit.java b/src/java.desktop/share/classes/java/awt/Toolkit.java index b93f9e98fde..cc664f03cb1 100644 --- a/src/java.desktop/share/classes/java/awt/Toolkit.java +++ b/src/java.desktop/share/classes/java/awt/Toolkit.java @@ -1632,7 +1632,7 @@ public abstract class Toolkit { private int[] calls = new int[LONG_BITS]; private static volatile long enabledOnToolkitMask; private AWTEventListener eventListener = null; - private WeakHashMap listener2SelectiveListener = new WeakHashMap<>(); + private final WeakHashMap listener2SelectiveListener = new WeakHashMap<>(); /* * Extracts a "pure" AWTEventListener from a AWTEventListenerProxy, @@ -1741,10 +1741,9 @@ public abstract class Toolkit { synchronized (this) { SelectiveAWTEventListener selectiveListener = - listener2SelectiveListener.get(localL); + listener2SelectiveListener.remove(localL); if (selectiveListener != null) { - listener2SelectiveListener.remove(localL); int[] listenerCalls = selectiveListener.getCalls(); for (int i=0; i