Commit 59293a37d6abaa879e6f24e26b206a3b318b2f79

Con Kolivas 2011-12-26T09:29:16

Only pthread_join when pthread_cancel does not return an error.

1
2
3
4
5
6
7
8
9
10
11
12
13
diff --git a/util.c b/util.c
index 0ad8b7d..0bf71dc 100644
--- a/util.c
+++ b/util.c
@@ -681,7 +681,7 @@ void thr_info_cancel(struct thr_info *thr)
 	if (thr->q)
 		tq_freeze(thr->q);
 	if (thr->pth) {
-			if (pthread_cancel(thr->pth))
+			if (!pthread_cancel(thr->pth))
 				pthread_join(thr->pth, NULL);
 			thr->pth = 0L;
 	}