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)