summaryrefslogtreecommitdiff
path: root/Lib/venv
diff options
context:
space:
mode:
authorSteve Dower <steve.dower@microsoft.com>2018-02-19 17:25:24 -0800
committerGitHub <noreply@github.com>2018-02-19 17:25:24 -0800
commit6240917b773b52f8883387b9e3a5f327a4372068 (patch)
treef31ad9b8b1eef5f4174db12478ff9b71ac2d26d6 /Lib/venv
parent5537646bfacec463b450871dde31cb06c44a0556 (diff)
downloadcpython-git-6240917b773b52f8883387b9e3a5f327a4372068.tar.gz
bpo-32409: Ensures activate.bat can handle Unicode contents (GH-5757)
Diffstat (limited to 'Lib/venv')
-rw-r--r--Lib/venv/scripts/nt/activate.bat13
1 files changed, 13 insertions, 0 deletions
diff --git a/Lib/venv/scripts/nt/activate.bat b/Lib/venv/scripts/nt/activate.bat
index d76ca13596..126049f495 100644
--- a/Lib/venv/scripts/nt/activate.bat
+++ b/Lib/venv/scripts/nt/activate.bat
@@ -1,4 +1,13 @@
@echo off
+
+rem This file is UTF-8 encoded, so we need to update the current code page while executing it
+for /f "tokens=2 delims=:" %%a in ('"%SystemRoot%\System32\chcp.com"') do (
+ set "_OLD_CODEPAGE=%%a"
+)
+if defined _OLD_CODEPAGE (
+ "%SystemRoot%\System32\chcp.com" 65001 > nul
+)
+
set "VIRTUAL_ENV=__VENV_DIR__"
if not defined PROMPT (
@@ -30,3 +39,7 @@ if defined _OLD_VIRTUAL_PATH (
set "PATH=%VIRTUAL_ENV%\__VENV_BIN_NAME__;%PATH%"
:END
+if defined _OLD_CODEPAGE (
+ "%SystemRoot%\System32\chcp.com" %_OLD_CODEPAGE% > nul
+ set "_OLD_CODEPAGE="
+)