From 49fd1b338cb12f6bc6fd90233784fad339d436b6 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Tue, 5 Apr 2011 21:11:35 +0000 Subject: [PATCH] gotest: Add external timeout if internal timeout fails. From-SVN: r172003 --- libgo/testsuite/gotest | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/libgo/testsuite/gotest b/libgo/testsuite/gotest index 650e4333c0b..cae420f4f4b 100755 --- a/libgo/testsuite/gotest +++ b/libgo/testsuite/gotest @@ -377,7 +377,20 @@ case "x$dejagnu" in xno) ${GC} -g -c _testmain.go ${GL} *.o ${GOLIBS} - ./a.out -test.short -test.timeout=$timeout "$@" + + ./a.out -test.short -test.timeout=$timeout "$@" & + pid=$! + (sleep `expr $timeout + 10` + echo > gotest-timeout + echo "timed out in gotest" 1>&2 + kill -9 $pid) & + alarmpid=$! + wait $pid + status=$? + if ! test -f gotest-timeout; then + kill $alarmpid + fi + exit $status ;; xyes) rm -rf ../testsuite/*.o -- 2.30.2