From 9aac022e9eee28d9f2b3205ca36b4822e7ca1eab Mon Sep 17 00:00:00 2001 From: Daniil Ovchinnikov Date: Thu, 13 Jul 2017 18:06:11 +0300 Subject: [PATCH] [groovy] console: disallow running temporary console file as a script --- .../groovy/runner/GroovyScriptRunConfigurationProducer.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/runner/GroovyScriptRunConfigurationProducer.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/runner/GroovyScriptRunConfigurationProducer.java index b9cea3cefc7a..273513fdf186 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/runner/GroovyScriptRunConfigurationProducer.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/runner/GroovyScriptRunConfigurationProducer.java @@ -33,6 +33,7 @@ import com.intellij.openapi.vfs.VirtualFile; import com.intellij.psi.*; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import org.jetbrains.plugins.groovy.console.GroovyConsoleStateService; import org.jetbrains.plugins.groovy.lang.psi.GroovyFile; import org.jetbrains.plugins.groovy.lang.psi.impl.synthetic.GroovyScriptClass; import org.jetbrains.plugins.groovy.lang.psi.util.GroovyRunnerPsiUtil; @@ -61,6 +62,10 @@ public class GroovyScriptRunConfigurationProducer extends RuntimeConfigurationPr if (!(file instanceof GroovyFile)) { return null; } + final VirtualFile virtualFile = file.getVirtualFile(); + if (GroovyConsoleStateService.getInstance(element.getProject()).isProjectConsole(virtualFile)) { + return null; + } GroovyFile groovyFile = (GroovyFile)file; final PsiClass aClass = GroovyRunnerPsiUtil.getRunningClass(location.getPsiElement());