From 4b7969ed43eb4151791ee99b16ad698b2567b69a Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 6 Jul 2011 12:24:05 +0200 Subject: [PATCH] fixed NPE (Spring+Maven) --- .../impl/providers/PackageReferenceSet.java | 12 +++++++----- .../impl/providers/PatternPackageReferenceSet.java | 6 +++++- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/java/java-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/PackageReferenceSet.java b/java/java-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/PackageReferenceSet.java index 4290343542f1..1462d23a9c45 100644 --- a/java/java-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/PackageReferenceSet.java +++ b/java/java-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/PackageReferenceSet.java @@ -25,6 +25,7 @@ import com.intellij.psi.util.ReferenceSetBase; import com.intellij.util.NullableFunction; import com.intellij.util.containers.ContainerUtil; import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; import java.util.Collection; import java.util.Collections; @@ -43,10 +44,12 @@ public class PackageReferenceSet extends ReferenceSetBase { return new PsiPackageReference(this, range, index); } - public Collection resolvePackageName(PsiPackage context, String packageName) { - for (PsiPackage aPackage : context.getSubPackages()) { - if (Comparing.equal(aPackage.getName(), packageName)) { - return Collections.singleton(aPackage); + public Collection resolvePackageName(@Nullable PsiPackage context, String packageName) { + if (context != null) { + for (PsiPackage aPackage : context.getSubPackages()) { + if (Comparing.equal(aPackage.getName(), packageName)) { + return Collections.singleton(aPackage); + } } } return Collections.emptyList(); @@ -63,5 +66,4 @@ public class PackageReferenceSet extends ReferenceSetBase { } }); } - } \ No newline at end of file diff --git a/java/java-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/PatternPackageReferenceSet.java b/java/java-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/PatternPackageReferenceSet.java index 3c020f0e92fe..a6783dd5bf14 100644 --- a/java/java-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/PatternPackageReferenceSet.java +++ b/java/java-impl/src/com/intellij/psi/impl/source/resolve/reference/impl/providers/PatternPackageReferenceSet.java @@ -5,8 +5,10 @@ import com.intellij.psi.PsiPackage; import com.intellij.psi.impl.source.resolve.reference.impl.providers.PackageReferenceSet; import com.intellij.util.PatternUtil; import com.intellij.util.Processor; +import org.jetbrains.annotations.Nullable; import java.util.Collection; +import java.util.Collections; import java.util.HashSet; import java.util.Set; import java.util.regex.Pattern; @@ -17,7 +19,9 @@ public class PatternPackageReferenceSet extends PackageReferenceSet { } @Override - public Collection resolvePackageName(final PsiPackage context, final String packageName) { + public Collection resolvePackageName(@Nullable final PsiPackage context, final String packageName) { + if (context == null) return Collections.emptySet(); + if (packageName.contains("*")) { final Pattern pattern = PatternUtil.fromMask(packageName); final Set packages = new HashSet();