From 8de7b22bf7b3f28912608e342015b1e8a8eb10cb Mon Sep 17 00:00:00 2001 From: Lyubomir Marinov Date: Fri, 12 Dec 2008 18:42:06 +0000 Subject: [PATCH] Fixes a ClassCastException (introduced as part of the "fix" for issue #502) in .impl.systray.jdic reported by Werner in an e-mail on the dev mailing list subjected "Class cast exception jdic". --- .../communicator/impl/systray/jdic/StatusSubMenu.java | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/net/java/sip/communicator/impl/systray/jdic/StatusSubMenu.java b/src/net/java/sip/communicator/impl/systray/jdic/StatusSubMenu.java index 537536545..1d5a96f6d 100644 --- a/src/net/java/sip/communicator/impl/systray/jdic/StatusSubMenu.java +++ b/src/net/java/sip/communicator/impl/systray/jdic/StatusSubMenu.java @@ -131,17 +131,22 @@ static void addMenuItem(Object menu, Object menuItem) * this menu. * * @param protocolProvider the protocol provider corresponding to the - * account to remove. + * account to remove. */ private void removeAccount(ProtocolProviderService protocolProvider) { Object selector = this.accountSelectors.get(protocolProvider.getAccountID()); + Object selectorMenu; + if (selector instanceof StatusSimpleSelector) + selectorMenu = ((StatusSimpleSelector) selector).getMenu(); + else + selectorMenu = ((StatusSelector) selector).getMenu(); if (menu instanceof Container) - ((Container) menu).remove((Component) selector); + ((Container) menu).remove((Component) selectorMenu); else - ((MenuContainer) menu).remove((MenuComponent) selector); + ((MenuContainer) menu).remove((MenuComponent) selectorMenu); } /**