diff --git a/src/net/java/sip/communicator/plugin/advancedconfig/AdvancedConfigurationPanel.java b/src/net/java/sip/communicator/plugin/advancedconfig/AdvancedConfigurationPanel.java index aad5dd9f6..ce88309f5 100644 --- a/src/net/java/sip/communicator/plugin/advancedconfig/AdvancedConfigurationPanel.java +++ b/src/net/java/sip/communicator/plugin/advancedconfig/AdvancedConfigurationPanel.java @@ -30,7 +30,8 @@ public class AdvancedConfigurationPanel ListSelectionListener { /** - * The logger. + * The Logger used by this AdvancedConfigurationPanel for + * logging output. */ private final Logger logger = Logger.getLogger(AdvancedConfigurationPanel.class); @@ -143,7 +144,11 @@ public void serviceChanged(ServiceEvent event) ConfigurationForm configForm = (ConfigurationForm) sService; - if (!configForm.isAdvanced()) + /* + * This AdvancedConfigurationPanel is an advanced ConfigurationForm so + * don't try to add it to itself. + */ + if ((configForm == this) || !configForm.isAdvanced()) return; switch (event.getType()) @@ -190,6 +195,7 @@ public void addConfigForm(ConfigurationForm configForm) * * @param isVisible specifies whether the frame is to be visible or not. */ + @Override public void setVisible(boolean isVisible) { if (isVisible && configList.getSelectedIndex() < 0)