diff --git a/src/dorkbox/systemTray/SystemTray.java b/src/dorkbox/systemTray/SystemTray.java index 6e3c56d..3c205d7 100644 --- a/src/dorkbox/systemTray/SystemTray.java +++ b/src/dorkbox/systemTray/SystemTray.java @@ -1181,22 +1181,26 @@ class SystemTray { @Override public void run() { - synchronized (menuEntries) { - for (Iterator iterator = menuEntries.iterator(); iterator.hasNext(); ) { - final MenuEntry entry = iterator.next(); - if (entry.getText() - .equals(label)) { - iterator.remove(); + try { + synchronized (menuEntries) { + for (Iterator iterator = menuEntries.iterator(); iterator.hasNext(); ) { + final MenuEntry entry = iterator.next(); + if (entry.getText() + .equals(label)) { + iterator.remove(); - // this will also reset the menu - menuEntry.remove(); - hasValue.set(true); - countDownLatch.countDown(); - return; + // this will also reset the menu + menuEntry.remove(); + hasValue.set(true); + break; + } } } + } catch (Exception e) { + logger.error("Error removing menu entry from list.", e); + } finally { + countDownLatch.countDown(); } - countDownLatch.countDown(); } });