From 8d167c68f1cfcefed5312a8fa5e31393d47758e9 Mon Sep 17 00:00:00 2001 From: Dmitry Trofimov Date: Wed, 5 Mar 2014 20:45:39 +0100 Subject: [PATCH] Fix the locale on mac only for pycharm processes creation. --- .../execution/configurations/GeneralCommandLine.java | 4 ---- .../jetbrains/python/console/PydevConsoleRunner.java | 10 ++++++++-- .../jetbrains/python/run/PythonCommandLineState.java | 6 ++---- python/src/com/jetbrains/python/run/PythonTask.java | 2 ++ 4 files changed, 12 insertions(+), 10 deletions(-) diff --git a/platform/platform-api/src/com/intellij/execution/configurations/GeneralCommandLine.java b/platform/platform-api/src/com/intellij/execution/configurations/GeneralCommandLine.java index f5199e35a9e9..939680ea372a 100644 --- a/platform/platform-api/src/com/intellij/execution/configurations/GeneralCommandLine.java +++ b/platform/platform-api/src/com/intellij/execution/configurations/GeneralCommandLine.java @@ -282,10 +282,6 @@ public class GeneralCommandLine implements UserDataHolder { : EnvironmentUtil.getEnvironmentMap()); } - if (PlatformUtils.isPyCharm()) { //We test the approach on snakes first. If it won't cause problems then apply for all (IDEA-118946) - EncodingEnvironmentUtil.fixDefaultEncodingIfMac(this, null); - } - if (!myEnvParams.isEmpty()) { if (SystemInfo.isWindows) { THashMap envVars = new THashMap(CaseInsensitiveStringHashingStrategy.INSTANCE); diff --git a/python/src/com/jetbrains/python/console/PydevConsoleRunner.java b/python/src/com/jetbrains/python/console/PydevConsoleRunner.java index c3f89cd0cd57..9daaf7f5dcfd 100644 --- a/python/src/com/jetbrains/python/console/PydevConsoleRunner.java +++ b/python/src/com/jetbrains/python/console/PydevConsoleRunner.java @@ -20,6 +20,7 @@ import com.google.common.collect.Maps; import com.intellij.execution.ExecutionException; import com.intellij.execution.ExecutionHelper; import com.intellij.execution.Executor; +import com.intellij.execution.configurations.EncodingEnvironmentUtil; import com.intellij.execution.configurations.GeneralCommandLine; import com.intellij.execution.console.ConsoleHistoryController; import com.intellij.execution.console.LanguageConsoleView; @@ -288,8 +289,12 @@ public class PydevConsoleRunner extends AbstractConsoleRunnerWithHistory envs = myCommandLineArgumentsProvider.getAdditionalEnvs(); + if (envs != null) { + EncodingEnvironmentUtil.fixDefaultEncodingIfMac(envs, getProject()); + } final Process server = ProcessRunner - .createProcess(getWorkingDir(), myCommandLineArgumentsProvider.getAdditionalEnvs(), myCommandLineArgumentsProvider.getArguments()); + .createProcess(getWorkingDir(), envs, myCommandLineArgumentsProvider.getArguments()); try { myPydevConsoleCommunication = new PydevConsoleCommunication(getProject(), myPorts[0], server, myPorts[1]); } @@ -454,7 +459,8 @@ public class PydevConsoleRunner extends AbstractConsoleRunnerWithHistory