From 4e0aa95bf743dabeb84b637653fadc0aa0b94bf4 Mon Sep 17 00:00:00 2001 From: Roman Shevchenko Date: Thu, 20 Oct 2016 17:32:03 +0200 Subject: [PATCH] [java] descriptor lookup in multi-release .jars (inline) --- .../daemon/impl/analysis/ModuleHighlightUtil.java | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/ModuleHighlightUtil.java b/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/ModuleHighlightUtil.java index f7bc2fd07078..d8a9d5d975ac 100644 --- a/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/ModuleHighlightUtil.java +++ b/java/java-analysis-impl/src/com/intellij/codeInsight/daemon/impl/analysis/ModuleHighlightUtil.java @@ -63,7 +63,10 @@ public class ModuleHighlightUtil { if (index.isInLibraryClasses(file)) { VirtualFile classRoot = index.getClassRootForFile(file); if (classRoot != null) { - VirtualFile descriptorFile = findModuleDescriptor(classRoot); + VirtualFile descriptorFile = classRoot.findChild(PsiJavaModule.MODULE_INFO_CLS_FILE); + if (descriptorFile == null) { + descriptorFile = classRoot.findFileByRelativePath("META-INF/versions/9/" + PsiJavaModule.MODULE_INFO_CLS_FILE); + } if (descriptorFile != null) { PsiFile psiFile = PsiManager.getInstance(project).findFile(descriptorFile); if (psiFile instanceof PsiJavaFile) { @@ -88,14 +91,6 @@ public class ModuleHighlightUtil { } } - private static VirtualFile findModuleDescriptor(VirtualFile classRoot) { - VirtualFile result = classRoot.findChild(PsiJavaModule.MODULE_INFO_CLS_FILE); - if (result == null) { - result = classRoot.findFileByRelativePath("META-INF/versions/9/" + PsiJavaModule.MODULE_INFO_CLS_FILE); - } - return result; - } - @Nullable static HighlightInfo checkFileName(@NotNull PsiJavaModule element, @NotNull PsiFile file) { if (!MODULE_INFO_FILE.equals(file.getName())) {