summaryrefslogtreecommitdiff
path: root/platform/platform-impl/src/com/intellij/openapi/options/ex/ConfigurableExtensionPointUtil.java
diff options
context:
space:
mode:
Diffstat (limited to 'platform/platform-impl/src/com/intellij/openapi/options/ex/ConfigurableExtensionPointUtil.java')
-rw-r--r--platform/platform-impl/src/com/intellij/openapi/options/ex/ConfigurableExtensionPointUtil.java7
1 files changed, 4 insertions, 3 deletions
diff --git a/platform/platform-impl/src/com/intellij/openapi/options/ex/ConfigurableExtensionPointUtil.java b/platform/platform-impl/src/com/intellij/openapi/options/ex/ConfigurableExtensionPointUtil.java
index c06dbee44c1a..429a55b2b809 100644
--- a/platform/platform-impl/src/com/intellij/openapi/options/ex/ConfigurableExtensionPointUtil.java
+++ b/platform/platform-impl/src/com/intellij/openapi/options/ex/ConfigurableExtensionPointUtil.java
@@ -71,7 +71,7 @@ public class ConfigurableExtensionPointUtil {
idToConfigurable.put(parentId, parent.addChild(wrapper));
}
else {
- LOG.error("Can't find parent for " + parentId + " (" + wrapper + ")");
+ LOG.debug("Can't find parent for " + parentId + " (" + wrapper + ")");
}
}
}
@@ -79,8 +79,9 @@ public class ConfigurableExtensionPointUtil {
for (final Iterator<String> iterator = idToConfigurable.keySet().iterator(); iterator.hasNext(); ) {
final String key = iterator.next();
final ConfigurableWrapper wrapper = idToConfigurable.get(key);
- if (wrapper.getParentId() != null) {
- iterator.remove();
+ final String parentId = wrapper.getParentId();
+ if (parentId != null && idToConfigurable.containsKey(parentId)) {
+ iterator.remove(); // remove only processed parents
}
}
ContainerUtil.addAll(result, idToConfigurable.values());