mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
fixed NPE (Spring+Maven)
This commit is contained in:
+7
-5
@@ -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<PsiPackageReference> {
|
||||
return new PsiPackageReference(this, range, index);
|
||||
}
|
||||
|
||||
public Collection<PsiPackage> resolvePackageName(PsiPackage context, String packageName) {
|
||||
for (PsiPackage aPackage : context.getSubPackages()) {
|
||||
if (Comparing.equal(aPackage.getName(), packageName)) {
|
||||
return Collections.singleton(aPackage);
|
||||
public Collection<PsiPackage> 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<PsiPackageReference> {
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
+5
-1
@@ -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<PsiPackage> resolvePackageName(final PsiPackage context, final String packageName) {
|
||||
public Collection<PsiPackage> 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<PsiPackage> packages = new HashSet<PsiPackage>();
|
||||
|
||||
Reference in New Issue
Block a user