Patch #813200: Quote executable path on Windows. Fixes #811082.

Backported to 2.3.
This commit is contained in:
Martin v. Löwis 2003-10-23 15:55:28 +00:00
parent ee950ff393
commit d4210bc718
1 changed files with 10 additions and 2 deletions

View File

@ -293,8 +293,16 @@ class test__mkstemp_inner(TC):
tester = os.path.join(os.path.dirname(os.path.abspath(me)),
"tf_inherit_check.py")
retval = os.spawnl(os.P_WAIT, sys.executable,
sys.executable, tester, v, fd)
# On Windows a spawn* /path/ with embedded spaces shouldn't be quoted,
# but an arg with embedded spaces should be decorated with double
# quotes on each end
if sys.platform in ('win32'):
decorated = '"%s"' % sys.executable
tester = '"%s"' % tester
else:
decorated = sys.executable
retval = os.spawnl(os.P_WAIT, sys.executable, decorated, tester, v, fd)
self.failIf(retval < 0,
"child process caught fatal signal %d" % -retval)
self.failIf(retval > 0, "child process reports failure")