From 0695aa715ef5a7de2d098df096f3dfc05c1df0e8 Mon Sep 17 00:00:00 2001 From: peter Date: Tue, 7 Aug 2012 18:16:57 +0200 Subject: [PATCH] survive context invalidation (EA-36089) --- .../src/com/intellij/psi/scope/util/PsiScopesUtil.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/java/java-psi-impl/src/com/intellij/psi/scope/util/PsiScopesUtil.java b/java/java-psi-impl/src/com/intellij/psi/scope/util/PsiScopesUtil.java index 962d7cb9256a..c23a61889c2d 100644 --- a/java/java-psi-impl/src/com/intellij/psi/scope/util/PsiScopesUtil.java +++ b/java/java-psi-impl/src/com/intellij/psi/scope/util/PsiScopesUtil.java @@ -57,6 +57,7 @@ public class PsiScopesUtil { @NotNull final PsiElement entrance, @Nullable final PsiElement maxScope, @NotNull final ResolveState state) { + assert entrance.isValid(); PsiElement prevParent = entrance; PsiElement scope = entrance; @@ -78,6 +79,9 @@ public class PsiScopesUtil { if (scope == maxScope) break; prevParent = scope; scope = prevParent.getContext(); + if (scope != null && scope != prevParent.getParent() && !scope.isValid()) { + break; + } processor.handleEvent(JavaScopeProcessorEvent.CHANGE_LEVEL, null); }