Fix readAccess in TargetPlatformDetector.java on checking is file a script

#EA-211576 Fixed
This commit is contained in:
Vladimir Dolzhenko
2019-10-15 12:08:02 +02:00
parent 15997bf635
commit 78527abad9
@@ -16,6 +16,7 @@
package org.jetbrains.kotlin.idea.project;
import com.intellij.openapi.application.ReadAction;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.module.Module;
import com.intellij.openapi.project.Project;
@@ -60,11 +61,10 @@ public class TargetPlatformDetector {
return contextFile instanceof KtFile ? getPlatform((KtFile) contextFile) : JvmPlatforms.INSTANCE.getUnspecifiedJvmPlatform();
}
if (file.isScript()) {
ScriptDefinition scriptDefinition = DefinitionsKt.findScriptDefinition(file);
if (scriptDefinition != null) {
return getPlatform(file.getProject(), scriptDefinition);
}
final ScriptDefinition scriptDefinition =
ReadAction.compute(() -> file.isScript() ? DefinitionsKt.findScriptDefinition(file) : null);
if (scriptDefinition != null) {
return getPlatform(file.getProject(), scriptDefinition);
}
VirtualFile virtualFile = file.getOriginalFile().getVirtualFile();