From 116019cd3ade78a1ca958aa63e6c7d54b152390d Mon Sep 17 00:00:00 2001 From: Dmitry Batkovich Date: Fri, 28 Oct 2016 08:54:04 +0300 Subject: [PATCH] javac ast indices: NPE in isEnabledFor() for directory fixed --- .../compiler/backwardRefs/CompilerReferenceServiceImpl.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/java/compiler/impl/src/com/intellij/compiler/backwardRefs/CompilerReferenceServiceImpl.java b/java/compiler/impl/src/com/intellij/compiler/backwardRefs/CompilerReferenceServiceImpl.java index ce0c9994bc70..013add71a911 100644 --- a/java/compiler/impl/src/com/intellij/compiler/backwardRefs/CompilerReferenceServiceImpl.java +++ b/java/compiler/impl/src/com/intellij/compiler/backwardRefs/CompilerReferenceServiceImpl.java @@ -34,6 +34,7 @@ import com.intellij.openapi.util.ModificationTracker; import com.intellij.openapi.vfs.VirtualFile; import com.intellij.openapi.vfs.VirtualFileWithId; import com.intellij.psi.PsiElement; +import com.intellij.psi.PsiFile; import com.intellij.psi.PsiNamedElement; import com.intellij.psi.search.GlobalSearchScope; import com.intellij.psi.util.CachedValueProvider; @@ -211,8 +212,9 @@ public class CompilerReferenceServiceImpl extends CompilerReferenceService imple } private boolean isServiceEnabledFor(PsiElement element) { - return isServiceEnabled() && - !InjectedLanguageManager.getInstance(myProject).isInjectedFragment(ReadAction.compute(() -> element.getContainingFile())); + if (!isServiceEnabled()) return false; + PsiFile file = ReadAction.compute(() -> element.getContainingFile()); + return file != null && !InjectedLanguageManager.getInstance(myProject).isInjectedFragment(ReadAction.compute(() -> element.getContainingFile())); } private boolean isServiceEnabled() {