From e0ca94279aa0b0a64667cd19c404b4e9b6d06282 Mon Sep 17 00:00:00 2001 From: Matthew Gharrity Date: Thu, 23 Apr 2020 19:29:39 -0400 Subject: [PATCH] Move vFile.isValid() check inside read action Fixes KT-38541 --- .../script/configuration/listener/ScriptChangeListener.kt | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/idea/idea-core/src/org/jetbrains/kotlin/idea/core/script/configuration/listener/ScriptChangeListener.kt b/idea/idea-core/src/org/jetbrains/kotlin/idea/core/script/configuration/listener/ScriptChangeListener.kt index 4834c161a50..2f36addd61c 100644 --- a/idea/idea-core/src/org/jetbrains/kotlin/idea/core/script/configuration/listener/ScriptChangeListener.kt +++ b/idea/idea-core/src/org/jetbrains/kotlin/idea/core/script/configuration/listener/ScriptChangeListener.kt @@ -27,10 +27,9 @@ abstract class ScriptChangeListener(protected val project: Project) { abstract fun isApplicable(vFile: VirtualFile): Boolean protected fun getAnalyzableKtFileForScript(vFile: VirtualFile): KtFile? { - if (project.isDisposed) return null - if (!vFile.isValid) return null - return runReadAction { + if (project.isDisposed) return@runReadAction null + if (!vFile.isValid) return@runReadAction null (PsiManager.getInstance(project).findFile(vFile) as? KtFile)?.takeIf { ProjectRootsUtil.isInProjectSource(it, includeScriptsOutsideSourceRoots = true) }