From 0c44c0477bf1e6e00c15f6d316e293e56d057e40 Mon Sep 17 00:00:00 2001 From: Jack Jansen Date: Mon, 24 Feb 2003 15:26:39 +0000 Subject: [PATCH] sys.executable can contain spaces, cater for this when passing it to os.popen(). Fixes #692222. --- Lib/test/test_atexit.py | 4 ++-- Lib/test/test_popen.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Lib/test/test_atexit.py b/Lib/test/test_atexit.py index 324b76e4cf..1d120dfe2c 100644 --- a/Lib/test/test_atexit.py +++ b/Lib/test/test_atexit.py @@ -27,7 +27,7 @@ f = file(fname, "w") f.write(input) f.close() -p = popen("%s %s" % (executable, fname)) +p = popen('"%s" %s' % (executable, fname)) output = p.read() p.close() vereq(output, """\ @@ -55,7 +55,7 @@ f = file(fname, "w") f.write(input) f.close() -p = popen("%s %s" % (executable, fname)) +p = popen('"%s" %s' % (executable, fname)) output = p.read() p.close() vereq(output, """\ diff --git a/Lib/test/test_popen.py b/Lib/test/test_popen.py index 9111ec5e49..7a0ef9be07 100644 --- a/Lib/test/test_popen.py +++ b/Lib/test/test_popen.py @@ -15,7 +15,7 @@ from os import popen # This results in Python being spawned and printing the sys.argv list. # We can then eval() the result of this, and see what each argv was. def _do_test_commandline(cmdline, expected): - cmd = '%s -c "import sys;print sys.argv" %s' % (sys.executable, cmdline) + cmd = '"%s" -c "import sys;print sys.argv" %s' % (sys.executable, cmdline) data = popen(cmd).read() got = eval(data)[1:] # strip off argv[0] if got != expected: -- 2.40.0