From 83d09acf8e9d8ef1234f41f8e2eeec8d5862168a Mon Sep 17 00:00:00 2001 From: Anna Kozlova Date: Wed, 20 Jun 2018 12:40:27 +0300 Subject: [PATCH] hide change defaults intention if annotation is not accessible (IDEA-193685) --- .../nullable/NullableStuffInspectionBase.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/java/java-analysis-impl/src/com/intellij/codeInspection/nullable/NullableStuffInspectionBase.java b/java/java-analysis-impl/src/com/intellij/codeInspection/nullable/NullableStuffInspectionBase.java index 697f98f9ce10..e79ac8df3fcb 100644 --- a/java/java-analysis-impl/src/com/intellij/codeInspection/nullable/NullableStuffInspectionBase.java +++ b/java/java-analysis-impl/src/com/intellij/codeInspection/nullable/NullableStuffInspectionBase.java @@ -958,8 +958,13 @@ public class NullableStuffInspectionBase extends AbstractBaseJavaLocalInspection final PsiAnnotation annotation = AnnotationUtil.findAnnotation(modifierListOwner, nullableManager.getNotNulls()); if (annotation != null) { final PsiJavaCodeReferenceElement referenceElement = annotation.getNameReferenceElement(); - if (referenceElement != null && referenceElement.resolve() != null) { - return new ChangeNullableDefaultsFix(annotation.getQualifiedName(), null, nullableManager); + if (referenceElement != null) { + JavaResolveResult resolveResult = referenceElement.advancedResolve(false); + if (resolveResult.getElement() != null && + resolveResult.isValidResult() && + !nullableManager.getDefaultNotNull().equals(annotation.getQualifiedName())) { + return new ChangeNullableDefaultsFix(annotation.getQualifiedName(), null, nullableManager); + } } } return null;