aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/mtest.py
diff options
context:
space:
mode:
authorLuke Drummond <ldrumm@rtps.co>2021-02-18 19:54:55 +0000
committerJussi Pakkanen <jpakkane@gmail.com>2021-02-19 17:17:20 +0200
commit79f7328d6a010e56c28eb9442b61931cf13b04e6 (patch)
treefecb1b2de41b021851992f80f38d7dc9455fb694 /mesonbuild/mtest.py
parent90a7de3f2ba4b0510c2341346645eb7989376b62 (diff)
downloadmeson-79f7328d6a010e56c28eb9442b61931cf13b04e6.zip
meson-79f7328d6a010e56c28eb9442b61931cf13b04e6.tar.gz
meson-79f7328d6a010e56c28eb9442b61931cf13b04e6.tar.bz2
[TAP] Fix TAP parser when test exits with status
Some time between 0.56 and 0.57 the TAP parser broke when a test exits with a nonzero status. The TAP protocol does not specify this behaviour - giving latitude to implementers, and meson's previous behaviour was to report the exit status gracefully. This patch restores the old behaviour and adds a regression test
Diffstat (limited to 'mesonbuild/mtest.py')
-rw-r--r--mesonbuild/mtest.py1
1 files changed, 1 insertions, 0 deletions
diff --git a/mesonbuild/mtest.py b/mesonbuild/mtest.py
index 95ad77b..d5bcf94 100644
--- a/mesonbuild/mtest.py
+++ b/mesonbuild/mtest.py
@@ -1004,6 +1004,7 @@ class TestRunTAP(TestRun):
stdo: str, stde: str) -> None:
if returncode != 0 and not res.was_killed():
res = TestResult.ERROR
+ stde = stde or ''
stde += '\n(test program exited with status code {})'.format(returncode,)
super().complete(returncode, res, stdo, stde)