diff --git a/java/java-psi-impl/src/com/intellij/psi/impl/source/FileLocalResolver.java b/java/java-psi-impl/src/com/intellij/psi/impl/source/FileLocalResolver.java index d5c76bffecf4..009f469a41e5 100644 --- a/java/java-psi-impl/src/com/intellij/psi/impl/source/FileLocalResolver.java +++ b/java/java-psi-impl/src/com/intellij/psi/impl/source/FileLocalResolver.java @@ -17,6 +17,7 @@ package com.intellij.psi.impl.source; import com.intellij.lang.LighterAST; import com.intellij.lang.LighterASTNode; +import com.intellij.openapi.progress.ProgressManager; import com.intellij.psi.JavaTokenType; import com.intellij.psi.impl.source.tree.ElementType; import com.intellij.psi.impl.source.tree.LightTreeUtil; @@ -59,6 +60,7 @@ public class FileLocalResolver { boolean passedClass = false; LighterASTNode lastParent = ref; while (true) { + ProgressManager.checkCanceled(); LighterASTNode scope = myTree.getParent(lastParent); if (scope == null) return LightResolveResult.NON_LOCAL; diff --git a/platform/core-impl/src/com/intellij/psi/impl/source/tree/RecursiveLighterASTNodeWalkingVisitor.java b/platform/core-impl/src/com/intellij/psi/impl/source/tree/RecursiveLighterASTNodeWalkingVisitor.java index 3a8c11e25305..e05b1b109214 100644 --- a/platform/core-impl/src/com/intellij/psi/impl/source/tree/RecursiveLighterASTNodeWalkingVisitor.java +++ b/platform/core-impl/src/com/intellij/psi/impl/source/tree/RecursiveLighterASTNodeWalkingVisitor.java @@ -20,13 +20,11 @@ import com.intellij.lang.LighterAST; import com.intellij.lang.LighterASTNode; import com.intellij.lang.LighterASTTokenNode; import com.intellij.lang.LighterLazyParseableNode; -import com.intellij.util.Function; +import com.intellij.openapi.progress.ProgressManager; import com.intellij.util.WalkingState; -import com.intellij.util.containers.ContainerUtil; import com.intellij.util.containers.Stack; import org.jetbrains.annotations.NotNull; -import java.util.Collections; import java.util.List; public abstract class RecursiveLighterASTNodeWalkingVisitor extends LighterASTNodeVisitor { @@ -97,6 +95,7 @@ public abstract class RecursiveLighterASTNodeWalkingVisitor extends LighterASTNo @Override public void visit(@NotNull IndexedLighterASTNode iNode) { + ProgressManager.checkCanceled(); LighterASTNode element = iNode.node; RecursiveLighterASTNodeWalkingVisitor visitor = RecursiveLighterASTNodeWalkingVisitor.this; if (element instanceof LighterLazyParseableNode) {