From: Simon McVittie Date: Mon, 19 Oct 2015 15:02:36 +0000 (+0100) Subject: When running TAP tests, filter out trailing \r from Windows .exe X-Git-Tag: dbus-1.10.4~28 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=24342d5912b828607b1b6efd628b81fb7420f6b8;p=thirdparty%2Fdbus.git When running TAP tests, filter out trailing \r from Windows .exe If we're running Windows executables using Wine, then tap-driver.sh won't accept "1..4\r\n" as TAP syntax. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=92538 Reviewed-by: Ralf Habacker --- diff --git a/test/glib-tap-test.sh b/test/glib-tap-test.sh index fcb73383e..5e5e6e5f9 100755 --- a/test/glib-tap-test.sh +++ b/test/glib-tap-test.sh @@ -10,4 +10,24 @@ set -e t="$1" shift -exec "$t" --tap "$@" + +case "$t" in + (*.exe) + # We're running a Windows executable, possibly on a Unix + # platform. Avoid having invalid TAP syntax like "ok 3\r\n" + # where "ok 3\n" was intended. + echo 1 > "$t".exit-status.tmp + ( + set +e + "$t" --tap "$@" + echo "$?" > "$t".exit-status.tmp + ) | sed -e 's/\r$//' + e="$(cat "$t".exit-status.tmp)" + rm "$t".exit-status.tmp + exit "$e" + ;; + + (*) + exec "$t" --tap "$@" + ;; +esac