diff options
Diffstat (limited to 'java/java-indexing-impl/src/com/intellij/psi/impl/search/JavaSourceFilterScope.java')
-rw-r--r-- | java/java-indexing-impl/src/com/intellij/psi/impl/search/JavaSourceFilterScope.java | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/java/java-indexing-impl/src/com/intellij/psi/impl/search/JavaSourceFilterScope.java b/java/java-indexing-impl/src/com/intellij/psi/impl/search/JavaSourceFilterScope.java index 59c7d6505859..b25f8c50911f 100644 --- a/java/java-indexing-impl/src/com/intellij/psi/impl/search/JavaSourceFilterScope.java +++ b/java/java-indexing-impl/src/com/intellij/psi/impl/search/JavaSourceFilterScope.java @@ -1,5 +1,5 @@ /* - * Copyright 2000-2013 JetBrains s.r.o. + * Copyright 2000-2014 JetBrains s.r.o. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,6 +20,7 @@ package com.intellij.psi.impl.search; import com.intellij.ide.highlighter.JavaClassFileType; +import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.project.Project; import com.intellij.openapi.roots.JdkOrderEntry; import com.intellij.openapi.roots.OrderEntry; @@ -30,13 +31,25 @@ import com.intellij.psi.SdkResolveScopeProvider; import com.intellij.psi.search.DelegatingGlobalSearchScope; import com.intellij.psi.search.GlobalSearchScope; import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; public class JavaSourceFilterScope extends DelegatingGlobalSearchScope { + private static final Logger LOG = Logger.getInstance(JavaSourceFilterScope.class); + + @Nullable private final ProjectFileIndex myIndex; public JavaSourceFilterScope(@NotNull final GlobalSearchScope delegate) { super(delegate); - myIndex = ProjectRootManager.getInstance(getProject()).getFileIndex(); + + Project project = getProject(); + if (project != null) { + myIndex = ProjectRootManager.getInstance(project).getFileIndex(); + } + else { + myIndex = null; + LOG.error("delegate.getProject() == null, delegate.getClass() == " + delegate.getClass()); + } } @Override @@ -45,6 +58,10 @@ public class JavaSourceFilterScope extends DelegatingGlobalSearchScope { return false; } + if (myIndex == null) { + return false; + } + if (JavaClassFileType.INSTANCE == file.getFileType()) { return myIndex.isInLibraryClasses(file); } |