From 82c09769f9547c99cb0bbb3b746ed10dfe05cf6f Mon Sep 17 00:00:00 2001 From: Ray Donnelly Date: Tue, 2 Jan 2018 13:48:28 +0000 Subject: Do not add unnormalised entries to PATH in scons.bat --- src/CHANGES.txt | 6 ++++++ src/script/scons.bat | 4 +++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/CHANGES.txt b/src/CHANGES.txt index accd2f0..f5127dd 100644 --- a/src/CHANGES.txt +++ b/src/CHANGES.txt @@ -7,6 +7,12 @@ RELEASE 3.1.0.alpha.yyyymmdd - NEW DATE WILL BE INSERTED HERE + From Ray Donnelly: + - Do not assume execeutables launched via scons.bat can handle unnormalised paths. + Python 3.6 cannot for a start: https://bugs.python.org/issue32457. To be exact + this means we must not add '..', and instead use 'pushd' and '%CD%' to add the + parent directory to PATH. + From Gary Oberbrunner: - Fix bug when Installing multiple subdirs outside the source tree - fix to_str to handle None without raising exception diff --git a/src/script/scons.bat b/src/script/scons.bat index fddeca4..a9e777e 100644 --- a/src/script/scons.bat +++ b/src/script/scons.bat @@ -16,7 +16,9 @@ goto endscons :WinNT setlocal @REM ensure the script will be executed with the Python it was installed for -set path=%~dp0;%~dp0..;%path% +pushd %~dp0.. +set path=%~dp0;%CD%;%path% +popd @REM try the script named as the .bat file in current dir, then in Scripts subdir set scriptname=%~dp0%~n0.py if not exist "%scriptname%" set scriptname=%~dp0Scripts\%~n0.py -- cgit v0.12