summaryrefslogtreecommitdiff
path: root/platform/lang-impl/src/com/intellij/ide/projectView/ProjectViewPsiTreeChangeListener.java
diff options
context:
space:
mode:
Diffstat (limited to 'platform/lang-impl/src/com/intellij/ide/projectView/ProjectViewPsiTreeChangeListener.java')
-rw-r--r--platform/lang-impl/src/com/intellij/ide/projectView/ProjectViewPsiTreeChangeListener.java6
1 files changed, 4 insertions, 2 deletions
diff --git a/platform/lang-impl/src/com/intellij/ide/projectView/ProjectViewPsiTreeChangeListener.java b/platform/lang-impl/src/com/intellij/ide/projectView/ProjectViewPsiTreeChangeListener.java
index 58bef64556c2..e2c79cffef46 100644
--- a/platform/lang-impl/src/com/intellij/ide/projectView/ProjectViewPsiTreeChangeListener.java
+++ b/platform/lang-impl/src/com/intellij/ide/projectView/ProjectViewPsiTreeChangeListener.java
@@ -125,8 +125,10 @@ public abstract class ProjectViewPsiTreeChangeListener extends PsiTreeChangeAdap
updater.addSubtreeToUpdate(rootNode);
return;
}
-
- updater.addSubtreeToUpdateByElement(element);
+ final PsiElement parent = element.getParent();
+ if (parent == null || !updater.addSubtreeToUpdateByElement(parent)) {
+ updater.addSubtreeToUpdateByElement(element);
+ }
}
else if (propertyName.equals(PsiTreeChangeEvent.PROP_FILE_TYPES)){
updater.addSubtreeToUpdate(rootNode);