From cf797d3d02dd7ddc7c44892551d9e7f2f190e40b Mon Sep 17 00:00:00 2001
From: Juan Batiz-Benet <juan@benet.ai>
Date: Tue, 21 Apr 2015 00:24:55 -0700
Subject: [PATCH] sharness: only send kill signal once - #1106

sharness should only send the kill signal once, as that is
what a graceful shutdown should do. in the event that doesn't
happen, we should send it again, and then kill -9 to prevent it
lingering and messing with other tests.
---
 test/sharness/lib/test-lib.sh | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/test/sharness/lib/test-lib.sh b/test/sharness/lib/test-lib.sh
index 4be9aa434..4ca467033 100644
--- a/test/sharness/lib/test-lib.sh
+++ b/test/sharness/lib/test-lib.sh
@@ -236,13 +236,22 @@ test_launch_ipfs_daemon_and_mount() {
 }
 
 test_kill_repeat_10_sec() {
+	# try to shut down once + wait for graceful exit
+	kill $1
 	for i in 1 2 3 4 5 6 7 8 9 10
 	do
-		kill $1
 		sleep 1
 		! kill -0 $1 2>/dev/null && return
 	done
-	! kill -0 $1 2>/dev/null
+
+	# if not, try once more, which will skip graceful exit
+	kill $1
+	sleep 1
+	! kill -0 $1 2>/dev/null && return
+
+	# ok, no hope. kill it to prevent it messing with other tests
+	kill -9 $1 2>/dev/null
+	return 1
 }
 
 test_kill_ipfs_daemon() {
-- 
GitLab