aboutsummaryrefslogtreecommitdiff
path: root/linuxthreads
diff options
context:
space:
mode:
Diffstat (limited to 'linuxthreads')
-rw-r--r--linuxthreads/ChangeLog6
-rw-r--r--linuxthreads/cancel.c1
2 files changed, 7 insertions, 0 deletions
diff --git a/linuxthreads/ChangeLog b/linuxthreads/ChangeLog
index 52230cd..8307841 100644
--- a/linuxthreads/ChangeLog
+++ b/linuxthreads/ChangeLog
@@ -1,3 +1,9 @@
+2000-11-06 Ulrich Drepper <drepper@redhat.com>
+
+ * cancel.c (pthread_cancel): Always set p_canceled, even if we are
+ not doing it right now.
+ Reported by Kaz Kylheku <kaz@ashi.footprints.net>.
+
2000-10-30 Ulrich Drepper <drepper@redhat.com>
* Examples/ex4.c (main): Don't use exit() to avoid warning with
diff --git a/linuxthreads/cancel.c b/linuxthreads/cancel.c
index 370a373..40f9db5 100644
--- a/linuxthreads/cancel.c
+++ b/linuxthreads/cancel.c
@@ -65,6 +65,7 @@ int pthread_cancel(pthread_t thread)
th = handle->h_descr;
if (th->p_cancelstate == PTHREAD_CANCEL_DISABLE || th->p_canceled) {
+ th->p_canceled = 1;
__pthread_unlock(&handle->h_lock);
return 0;
}