summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFlorent Xicluna <florent.xicluna@gmail.com>2010-03-11 01:00:26 (GMT)
committerFlorent Xicluna <florent.xicluna@gmail.com>2010-03-11 01:00:26 (GMT)
commitecf021c7c0caf4698cf704d03af4eb3d366fcdd5 (patch)
treee6b9183095aac6860e74d98fe983b7136bee5813
parenta470738b7bf68c3f9bd4063cbef5c0db66bc04a8 (diff)
downloadcpython-ecf021c7c0caf4698cf704d03af4eb3d366fcdd5.zip
cpython-ecf021c7c0caf4698cf704d03af4eb3d366fcdd5.tar.gz
cpython-ecf021c7c0caf4698cf704d03af4eb3d366fcdd5.tar.bz2
Merged revisions 78830 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk ........ r78830 | florent.xicluna | 2010-03-11 01:56:59 +0100 (jeu, 11 mar 2010) | 3 lines Fix the test_subprocess failure when sys.executable is meaningless: '' or a directory. It does not fix #7774. ........
-rw-r--r--Lib/sysconfig.py5
-rw-r--r--Lib/test/test_subprocess.py2
2 files changed, 4 insertions, 3 deletions
diff --git a/Lib/sysconfig.py b/Lib/sysconfig.py
index 619e458..33a13b6 100644
--- a/Lib/sysconfig.py
+++ b/Lib/sysconfig.py
@@ -84,7 +84,8 @@ _PREFIX = os.path.normpath(sys.prefix)
_EXEC_PREFIX = os.path.normpath(sys.exec_prefix)
_CONFIG_VARS = None
_USER_BASE = None
-_PROJECT_BASE = os.path.dirname(realpath(sys.executable))
+# Note: sys.executable can be '' or even a directory, until #7774 is fixed.
+_PROJECT_BASE = realpath(os.path.dirname(sys.executable))
if os.name == "nt" and "pcbuild" in _PROJECT_BASE[-8:].lower():
_PROJECT_BASE = realpath(os.path.join(_PROJECT_BASE, pardir))
@@ -296,7 +297,7 @@ def _init_non_posix(vars):
vars['SO'] = '.pyd'
vars['EXE'] = '.exe'
vars['VERSION'] = _PY_VERSION_SHORT_NO_DOT
- vars['BINDIR'] = os.path.dirname(realpath(sys.executable))
+ vars['BINDIR'] = realpath(os.path.dirname(sys.executable))
#
# public APIs
diff --git a/Lib/test/test_subprocess.py b/Lib/test/test_subprocess.py
index dff9012..64bfabb 100644
--- a/Lib/test/test_subprocess.py
+++ b/Lib/test/test_subprocess.py
@@ -135,7 +135,7 @@ class ProcessTestCase(unittest.TestCase):
self.assertEqual(p.stderr, None)
def test_executable_with_cwd(self):
- python_dir = os.path.dirname(os.path.realpath(sys.executable))
+ python_dir = os.path.realpath(os.path.dirname(sys.executable))
p = subprocess.Popen(["somethingyoudonthave", "-c",
"import sys; sys.exit(47)"],
executable=sys.executable, cwd=python_dir)