Commit 0311b2de authored by Jason Madden's avatar Jason Madden

implement start_new_session.

parent 4469ef5e
...@@ -284,7 +284,6 @@ class Popen(object): ...@@ -284,7 +284,6 @@ class Popen(object):
else: else:
close_fds = False close_fds = False
if mswindows: if mswindows:
if preexec_fn is not None: if preexec_fn is not None:
raise ValueError("preexec_fn is not supported on Windows " raise ValueError("preexec_fn is not supported on Windows "
...@@ -1017,6 +1016,9 @@ class Popen(object): ...@@ -1017,6 +1016,9 @@ class Popen(object):
if sig is not None: if sig is not None:
signal.signal(sig, signal.SIG_DFL) signal.signal(sig, signal.SIG_DFL)
if start_new_session:
os.setsid()
if env is None: if env is None:
os.execvp(executable, args) os.execvp(executable, args)
else: else:
......
...@@ -218,9 +218,6 @@ if sys.version_info[:2] >= (3, 4): ...@@ -218,9 +218,6 @@ if sys.version_info[:2] >= (3, 4):
# Our monkey patch waits for the process with a watcher and so detects # Our monkey patch waits for the process with a watcher and so detects
# the exit before the normal polling mechanism would # the exit before the normal polling mechanism would
'test_subprocess.POSIXProcessTestCase.test_start_new_session',
# XXX: We don't implement the start_new_session option yet
'test_subprocess.POSIXProcessTestCase.test_exception_bad_args_0', 'test_subprocess.POSIXProcessTestCase.test_exception_bad_args_0',
'test_subprocess.POSIXProcessTestCase.test_exception_bad_executable', 'test_subprocess.POSIXProcessTestCase.test_exception_bad_executable',
'test_subprocess.POSIXProcessTestCase.test_exception_cwd', 'test_subprocess.POSIXProcessTestCase.test_exception_cwd',
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment