From 126c21de962bb987c65e0f7da5db8a0126476e5b Mon Sep 17 00:00:00 2001 From: "Natalia.Ukhorskaya" Date: Tue, 22 Jan 2013 11:38:57 +0400 Subject: [PATCH] Fix EA-42958 - ISE: FqName.parent --- .../jetbrains/jet/lang/resolve/java/PackageClassUtils.java | 7 +++++++ .../src/org/jetbrains/jet/asJava/JavaElementFinder.java | 5 ++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/PackageClassUtils.java b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/PackageClassUtils.java index b36656abe81..c2c4e37250c 100644 --- a/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/PackageClassUtils.java +++ b/compiler/frontend.java/src/org/jetbrains/jet/lang/resolve/java/PackageClassUtils.java @@ -42,4 +42,11 @@ public class PackageClassUtils { public static boolean isPackageClass(@NotNull PsiClass psiClass) { return JetPackageClassAnnotation.get(psiClass).isDefined(); } + + public static boolean isPackageClass(@NotNull FqName fqName) { + if (fqName.isRoot()) { + return false; + } + return PackageClassUtils.getPackageClassFqName(fqName.parent()).equals(fqName); + } } diff --git a/compiler/jet.as.java.psi/src/org/jetbrains/jet/asJava/JavaElementFinder.java b/compiler/jet.as.java.psi/src/org/jetbrains/jet/asJava/JavaElementFinder.java index 53523d4f760..ac35c6cf5ec 100644 --- a/compiler/jet.as.java.psi/src/org/jetbrains/jet/asJava/JavaElementFinder.java +++ b/compiler/jet.as.java.psi/src/org/jetbrains/jet/asJava/JavaElementFinder.java @@ -87,9 +87,8 @@ public class JavaElementFinder extends PsiElementFinder implements JavaPsiFacade findClassesAndObjects(qualifiedName, scope, answer); - FqName packageFQN = qualifiedName.parent(); - if (PackageClassUtils.getPackageClassFqName(packageFQN).equals(qualifiedName)) { - findPackageClass(packageFQN, scope, answer); + if (PackageClassUtils.isPackageClass(qualifiedName)) { + findPackageClass(qualifiedName.parent(), scope, answer); } return answer.toArray(new PsiClass[answer.size()]);