From 180d66a7c13310c5e7c7fb6b29bc3745a66abfc8 Mon Sep 17 00:00:00 2001 From: nathan Date: Mon, 26 Sep 2016 21:46:41 +0200 Subject: [PATCH] Cleaned up removing menu entry, added exception throwing --- src/dorkbox/systemTray/SystemTray.java | 28 +++++++++++++++----------- 1 file changed, 16 insertions(+), 12 deletions(-) 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(); } });