Preserve the original environment (e.g. LD_LIBRARY_PATH)

This commit is contained in:
Antoine Pitrou 2010-11-09 22:04:44 +00:00
parent 84c29a2e16
commit adffced3df
1 changed files with 5 additions and 4 deletions

View File

@ -17,12 +17,13 @@ from test.support import make_legacy_pyc
# Executing the interpreter in a subprocess
def _assert_python(expected_success, *args, **env_vars):
cmd_line = [sys.executable]
if env_vars:
env = env_vars
else:
env = os.environ
if not env_vars:
cmd_line.append('-E')
cmd_line.extend(args)
# Need to preserve the original environment, for in-place testing of
# shared library builds.
env = os.environ.copy()
env.update(env_vars)
p = subprocess.Popen(cmd_line, stdin=subprocess.PIPE,
stdout=subprocess.PIPE, stderr=subprocess.PIPE,
env=env)