From 8731d7b3c69beb226562c5fc2b382af9249fec5c Mon Sep 17 00:00:00 2001 From: Richard Oudkerk Date: Sun, 17 Nov 2013 17:24:11 +0000 Subject: Fix handling of SystemExit and exit code. Patch by Brodie Rao. --- Lib/multiprocessing/process.py | 2 +- Lib/test/test_multiprocessing.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Lib/multiprocessing/process.py b/Lib/multiprocessing/process.py index 893507b..3d32add 100644 --- a/Lib/multiprocessing/process.py +++ b/Lib/multiprocessing/process.py @@ -266,7 +266,7 @@ class Process(object): exitcode = e.args[0] else: sys.stderr.write(str(e.args[0]) + '\n') - exitcode = 0 if isinstance(e.args[0], str) else 1 + exitcode = 1 except: exitcode = 1 import traceback diff --git a/Lib/test/test_multiprocessing.py b/Lib/test/test_multiprocessing.py index 86cf5c1..77ad0f7 100644 --- a/Lib/test/test_multiprocessing.py +++ b/Lib/test/test_multiprocessing.py @@ -467,7 +467,7 @@ class _TestSubclassingProcess(BaseTestCase): testfn = test.support.TESTFN self.addCleanup(test.support.unlink, testfn) - for reason, code in (([1, 2, 3], 1), ('ignore this', 0)): + for reason, code in (([1, 2, 3], 1), ('ignore this', 1)): p = self.Process(target=self._test_sys_exit, args=(reason, testfn)) p.daemon = True p.start() -- cgit v0.12