Do not access stubs in dumb mode finding script definition

This commit is contained in:
Natalia Selezneva
2018-10-12 12:30:08 +03:00
parent daa6e9b562
commit c73885142a
@@ -19,6 +19,7 @@ package org.jetbrains.kotlin.script
import com.intellij.ide.highlighter.JavaClassFileType import com.intellij.ide.highlighter.JavaClassFileType
import com.intellij.ide.highlighter.JavaFileType import com.intellij.ide.highlighter.JavaFileType
import com.intellij.openapi.components.ServiceManager import com.intellij.openapi.components.ServiceManager
import com.intellij.openapi.project.DumbService
import com.intellij.openapi.project.Project import com.intellij.openapi.project.Project
import com.intellij.openapi.vfs.VirtualFile import com.intellij.openapi.vfs.VirtualFile
import com.intellij.psi.PsiFile import com.intellij.psi.PsiFile
@@ -52,10 +53,10 @@ fun findScriptDefinition(file: VirtualFile, project: Project): KotlinScriptDefin
val psiFile = PsiManager.getInstance(project).findFile(file) val psiFile = PsiManager.getInstance(project).findFile(file)
if (psiFile != null) { if (psiFile != null) {
if (psiFile !is KtFile || !psiFile.isScript()) { if (psiFile !is KtFile) return null
return null if (!DumbService.isDumb(project)) {
return psiFile.script?.kotlinScriptDefinition?.value
} }
return psiFile.script?.kotlinScriptDefinition?.value
} }
return ScriptDefinitionProvider.getInstance(project).findScriptDefinition(file.name) return ScriptDefinitionProvider.getInstance(project).findScriptDefinition(file.name)