From 5420c19cc9ccb345b3e34ff48fba68c8e7f317d8 Mon Sep 17 00:00:00 2001 From: "Maxim.Medvedev" Date: Wed, 22 Feb 2012 19:33:06 +0400 Subject: [PATCH] IDEA-81733 Groovy script configuration loses environment variables --- .../execution/application/ApplicationConfiguration.java | 3 ++- .../execution/configuration/AbstractRunConfiguration.java | 3 ++- .../configuration/EnvironmentVariablesComponent.java | 3 ++- .../plugins/groovy/runner/GroovyScriptRunConfiguration.java | 4 ++-- 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/java/execution/impl/src/com/intellij/execution/application/ApplicationConfiguration.java b/java/execution/impl/src/com/intellij/execution/application/ApplicationConfiguration.java index 69d02d778256..a838c6f3a4ef 100644 --- a/java/execution/impl/src/com/intellij/execution/application/ApplicationConfiguration.java +++ b/java/execution/impl/src/com/intellij/execution/application/ApplicationConfiguration.java @@ -182,7 +182,8 @@ public class ApplicationConfiguration extends ModuleBasedConfiguration envs) { - this.myEnvs = envs; + myEnvs.clear(); + myEnvs.putAll(envs); } public boolean isPassParentEnvs() { diff --git a/platform/lang-api/src/com/intellij/execution/configuration/AbstractRunConfiguration.java b/platform/lang-api/src/com/intellij/execution/configuration/AbstractRunConfiguration.java index 0a21fc63d03e..f5c0747209fc 100644 --- a/platform/lang-api/src/com/intellij/execution/configuration/AbstractRunConfiguration.java +++ b/platform/lang-api/src/com/intellij/execution/configuration/AbstractRunConfiguration.java @@ -23,7 +23,8 @@ public abstract class AbstractRunConfiguration extends ModuleBasedConfiguration< } public void setEnvs(final Map envs) { - myEnvs = envs; + myEnvs.clear(); + myEnvs.putAll(envs); } public boolean isPassParentEnvs() { diff --git a/platform/lang-api/src/com/intellij/execution/configuration/EnvironmentVariablesComponent.java b/platform/lang-api/src/com/intellij/execution/configuration/EnvironmentVariablesComponent.java index 9de175f3f8b3..e7c4120a4109 100644 --- a/platform/lang-api/src/com/intellij/execution/configuration/EnvironmentVariablesComponent.java +++ b/platform/lang-api/src/com/intellij/execution/configuration/EnvironmentVariablesComponent.java @@ -72,7 +72,8 @@ public class EnvironmentVariablesComponent extends LabeledComponent envs) { - myEnvs = envs; + myEnvs.clear(); + myEnvs.putAll(envs); @NonNls final StringBuilder buf = StringBuilderSpinAllocator.alloc(); try { for (String variable : myEnvs.keySet()) { diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/runner/GroovyScriptRunConfiguration.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/runner/GroovyScriptRunConfiguration.java index f57d42629f2b..4a53ff0b76d4 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/runner/GroovyScriptRunConfiguration.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/runner/GroovyScriptRunConfiguration.java @@ -50,7 +50,7 @@ import com.intellij.psi.PsiFile; import com.intellij.psi.PsiManager; import com.intellij.util.PathUtil; import com.intellij.util.SystemProperties; -import com.intellij.util.containers.hash.HashMap; +import com.intellij.util.containers.hash.LinkedHashMap; import org.jdom.Element; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -77,7 +77,7 @@ public class GroovyScriptRunConfiguration extends ModuleBasedConfiguration envs = new HashMap(); + private final Map envs = new LinkedHashMap(); public boolean passParentEnv = true; public GroovyScriptRunConfiguration(final String name, final Project project, final ConfigurationFactory factory) {