From 896feeaf7c524f54d87209feaf759c8f80ebabfc Mon Sep 17 00:00:00 2001 From: Tagir Valeev Date: Wed, 17 Jul 2019 11:51:56 +0700 Subject: [PATCH] ControlFlowUtil#findReferenceTo: minor performance improvements GitOrigin-RevId: b08accca0aa26c6ca1a78ba0f204521422d74e4e --- .../src/com/intellij/psi/controlFlow/ControlFlowUtil.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/java/java-psi-impl/src/com/intellij/psi/controlFlow/ControlFlowUtil.java b/java/java-psi-impl/src/com/intellij/psi/controlFlow/ControlFlowUtil.java index a6413ae8bb5e..20eafb1cce1f 100644 --- a/java/java-psi-impl/src/com/intellij/psi/controlFlow/ControlFlowUtil.java +++ b/java/java-psi-impl/src/com/intellij/psi/controlFlow/ControlFlowUtil.java @@ -1213,11 +1213,10 @@ public class ControlFlowUtil { private static PsiReferenceExpression findReferenceTo(@NotNull PsiElement element, @NotNull PsiVariable variable) { if (element instanceof PsiReferenceExpression && ExpressionUtil.isEffectivelyUnqualified((PsiReferenceExpression)element) - && ((PsiReferenceExpression)element).resolve() == variable) { + && ((PsiReferenceExpression)element).isReferenceTo(variable)) { return (PsiReferenceExpression)element; } - final PsiElement[] children = element.getChildren(); - for (PsiElement child : children) { + for (PsiElement child = element.getFirstChild(); child != null; child = child.getNextSibling()) { final PsiReferenceExpression reference = findReferenceTo(child, variable); if (reference != null) return reference; }