summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2017-11-15 23:18:06 +0200
committerJussi Pakkanen <jpakkane@gmail.com>2017-11-15 23:18:06 +0200
commit611e4e9849bb5d133e9e3c313ecc4921283e821c (patch)
treece69bc520cae7b6132b21535059ec5f6f1aa7303
parente51da1a34d3ac2ed23451e05c971720c20aaa064 (diff)
downloadmeson-fix2629.tar.gz
More defensive process killing. Closes #2629.fix2629
-rw-r--r--mesonbuild/mtest.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/mesonbuild/mtest.py b/mesonbuild/mtest.py
index 267e130be..30322aa35 100644
--- a/mesonbuild/mtest.py
+++ b/mesonbuild/mtest.py
@@ -267,7 +267,13 @@ class TestHarness:
if is_windows():
subprocess.call(['taskkill', '/F', '/T', '/PID', str(p.pid)])
else:
- os.killpg(os.getpgid(p.pid), signal.SIGKILL)
+ try:
+ os.killpg(os.getpgid(p.pid), signal.SIGKILL)
+ except ProcessLookupError:
+ # Sometimes (e.g. with Wine) this happens.
+ # There's nothing we can do (maybe the process
+ # already died) so carry on.
+ pass
(stdo, stde) = p.communicate()
endtime = time.time()
duration = endtime - starttime