diff --git a/java/java-impl/src/com/intellij/codeInsight/daemon/impl/JavaLineMarkerProvider.java b/java/java-impl/src/com/intellij/codeInsight/daemon/impl/JavaLineMarkerProvider.java index df86eee27b19..a351c62ddcb4 100644 --- a/java/java-impl/src/com/intellij/codeInsight/daemon/impl/JavaLineMarkerProvider.java +++ b/java/java-impl/src/com/intellij/codeInsight/daemon/impl/JavaLineMarkerProvider.java @@ -180,13 +180,11 @@ public class JavaLineMarkerProvider implements LineMarkerProvider, DumbAware { } private static boolean isRecursiveMethodCall(@NotNull PsiMethodCallExpression methodCall){ - final PsiMethod referencedMethod = (PsiMethod)methodCall.getMethodExpression().resolve(); + PsiMethod referencedMethod = methodCall.resolveMethod(); - if (referencedMethod == null){ - return false; - } - - return referencedMethod.getTextRange().contains(methodCall.getTextRange()); + TextRange rmRange = referencedMethod == null ? null : referencedMethod.getTextRange(); + int mcOffset = methodCall.getTextRange().getStartOffset(); + return rmRange != null && rmRange.contains(mcOffset); } private static void collectInheritingClasses(PsiClass aClass, Collection result) {