diff --git a/platform/lang-impl/src/com/intellij/internal/psiView/stubtree/StubViewerPsiBasedTree.java b/platform/lang-impl/src/com/intellij/internal/psiView/stubtree/StubViewerPsiBasedTree.java index bbbb64a9ee39..78614fa8f6db 100644 --- a/platform/lang-impl/src/com/intellij/internal/psiView/stubtree/StubViewerPsiBasedTree.java +++ b/platform/lang-impl/src/com/intellij/internal/psiView/stubtree/StubViewerPsiBasedTree.java @@ -234,6 +234,15 @@ public class StubViewerPsiBasedTree implements ViewerPsiBasedTree { ASTNode treeNode = myFile.findTreeForStub(stubTree, stubElement); if (treeNode == null) return; + PsiElement result = findElementForNode(treeNode); + + if (result != null) { + myUpdater.updatePsiTree(result, myStubTree.hasFocus() ? result.getTextRange() : null); + } + } + + @Nullable + private PsiElement findElementForNode(@NotNull ASTNode treeNode) { PsiElement result = null; if (treeNode.getTextLength() > 0) { result = CodeInsightUtilCore @@ -254,10 +263,7 @@ public class StubViewerPsiBasedTree implements ViewerPsiBasedTree { result = elementAt; } } - - if (result != null) { - myUpdater.updatePsiTree(result, myStubTree.hasFocus() ? result.getTextRange() : null); - } + return result; } } }