From 5d83effba9c418e11890f367f5418f630d61c494 Mon Sep 17 00:00:00 2001 From: Vyacheslav Karpukhin Date: Mon, 8 Aug 2016 20:03:54 +0200 Subject: [PATCH] OC-14017 "Before launch configurations" never not get executed, and prevent build if placed before build stage --- .../impl/RunConfigurationBeforeRunProvider.java | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/platform/lang-impl/src/com/intellij/execution/impl/RunConfigurationBeforeRunProvider.java b/platform/lang-impl/src/com/intellij/execution/impl/RunConfigurationBeforeRunProvider.java index a31d563d321e..2010b73d2968 100644 --- a/platform/lang-impl/src/com/intellij/execution/impl/RunConfigurationBeforeRunProvider.java +++ b/platform/lang-impl/src/com/intellij/execution/impl/RunConfigurationBeforeRunProvider.java @@ -33,6 +33,7 @@ import com.intellij.openapi.diagnostic.Logger; import com.intellij.openapi.extensions.Extensions; import com.intellij.openapi.project.Project; import com.intellij.openapi.ui.DialogWrapper; +import com.intellij.openapi.util.Computable; import com.intellij.openapi.util.Disposer; import com.intellij.openapi.util.Key; import com.intellij.openapi.util.Ref; @@ -188,7 +189,19 @@ extends BeforeRunTaskProvider targets = ApplicationManager.getApplication().runReadAction(new Computable>() { + @Override + public List compute() { + return ExecutionTargetManager.getTargetsFor(env.getProject(), settings); + } + }); + + if (targets.isEmpty()) { + return false; + } + + final ExecutionEnvironment environment = builder.target(targets.get(0)).build(); environment.setExecutionId(env.getExecutionId()); if (!ExecutionTargetManager.canRun(settings, environment.getExecutionTarget())) { return false;