From 6d148ad453ab11af71dad9871dfc3a417b989812 Mon Sep 17 00:00:00 2001 From: "Anna.Kozlova" Date: Mon, 10 Oct 2016 14:15:11 +0200 Subject: [PATCH] convert to local: skip refs in javadocs (IDEA-162003) --- .../BaseConvertToLocalQuickFix.java | 1 + .../ConvertParameterToLocalVariable/afterJavadocRef.java | 8 ++++++++ .../beforeJavadocRef.java | 9 +++++++++ 3 files changed, 18 insertions(+) create mode 100644 java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/afterJavadocRef.java create mode 100644 java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/beforeJavadocRef.java diff --git a/java/java-impl/src/com/intellij/codeInspection/varScopeCanBeNarrowed/BaseConvertToLocalQuickFix.java b/java/java-impl/src/com/intellij/codeInspection/varScopeCanBeNarrowed/BaseConvertToLocalQuickFix.java index 69a70e616546..7acda9d62e2b 100644 --- a/java/java-impl/src/com/intellij/codeInspection/varScopeCanBeNarrowed/BaseConvertToLocalQuickFix.java +++ b/java/java-impl/src/com/intellij/codeInspection/varScopeCanBeNarrowed/BaseConvertToLocalQuickFix.java @@ -239,6 +239,7 @@ public abstract class BaseConvertToLocalQuickFix implemen PsiElement firstElement = null; for (PsiReference reference : refs) { final PsiElement element = reference.getElement(); + if (!(element instanceof PsiReferenceExpression)) continue; if (firstElement == null || firstElement.getTextRange().getStartOffset() > element.getTextRange().getStartOffset()) { firstElement = element; } diff --git a/java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/afterJavadocRef.java b/java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/afterJavadocRef.java new file mode 100644 index 000000000000..2b9f5cb7579b --- /dev/null +++ b/java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/afterJavadocRef.java @@ -0,0 +1,8 @@ +// "Convert to local variable" "true" +class Temp { + /** + */ + void foo() { + int x = 5; + } +} \ No newline at end of file diff --git a/java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/beforeJavadocRef.java b/java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/beforeJavadocRef.java new file mode 100644 index 000000000000..bbd5b5ff6903 --- /dev/null +++ b/java/java-tests/testData/inspection/quickFix/ConvertParameterToLocalVariable/beforeJavadocRef.java @@ -0,0 +1,9 @@ +// "Convert to local variable" "true" +class Temp { + /** + * @param x + */ + void foo(int x) { + x = 5; + } +} \ No newline at end of file