From e8a35c538fb4537a8fedbead1f87e55685f7abeb Mon Sep 17 00:00:00 2001 From: Tagir Valeev Date: Tue, 23 Mar 2021 14:23:35 +0700 Subject: [PATCH] [java-i18n] Fix parameter index search EA-262185 - AE: ClsParameterListImpl.getParameterIndex GitOrigin-RevId: 2ec0cf96807d0a875cef8d3445701ca3d733c442 --- .../intellij/codeInspection/i18n/AnnotationContext.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/plugins/java-i18n/src/com/intellij/codeInspection/i18n/AnnotationContext.java b/plugins/java-i18n/src/com/intellij/codeInspection/i18n/AnnotationContext.java index befcb54bc477..14fab8b33624 100644 --- a/plugins/java-i18n/src/com/intellij/codeInspection/i18n/AnnotationContext.java +++ b/plugins/java-i18n/src/com/intellij/codeInspection/i18n/AnnotationContext.java @@ -86,9 +86,10 @@ final class AnnotationContext { } if (owner instanceof PsiParameter) { PsiParameter parameter = (PsiParameter)owner; - PsiMethod method = ObjectUtils.tryCast(parameter.getDeclarationScope(), PsiMethod.class); - if (method != null) { - int index = method.getParameterList().getParameterIndex(parameter); + PsiParameterList parameterList = ObjectUtils.tryCast(parameter.getParent(), PsiParameterList.class); + PsiMethod method = parameterList == null ? null : ObjectUtils.tryCast(parameterList.getParent(), PsiMethod.class); + if (parameterList != null && method != null) { + int index = parameterList.getParameterIndex(parameter); if (index >= 0) { Supplier> supplier = () -> { HashSet visited = new HashSet<>();