1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-08-01 10:06:57 +03:00
2000-11-07  Kazumoto Kojima  <kkojima@rr.iij4u.or.jp>

	* sysdeps/sh/bits/setjmp.h: Move to...
	* sysdeps/sh/sh4/bits/setjmp.h: ...here.
	* sysdeps/sh/sh3/bits/setjmp.h: New file.
This commit is contained in:
Ulrich Drepper
2000-11-07 16:49:35 +00:00
parent 632b6761c3
commit ece70a1400
4 changed files with 55 additions and 3 deletions

View File

@ -55,6 +55,7 @@ int pthread_cancel(pthread_t thread)
int dorestart = 0;
pthread_descr th;
pthread_extricate_if *pextricate;
int already_canceled;
__pthread_lock(&handle->h_lock, NULL);
if (invalid_handle(handle, thread)) {
@ -64,14 +65,15 @@ int pthread_cancel(pthread_t thread)
th = handle->h_descr;
if (th->p_cancelstate == PTHREAD_CANCEL_DISABLE || th->p_canceled) {
th->p_canceled = 1;
already_canceled = th->p_canceled;
th->p_canceled = 1;
if (th->p_cancelstate == PTHREAD_CANCEL_DISABLE || already_canceled) {
__pthread_unlock(&handle->h_lock);
return 0;
}
pextricate = th->p_extricate;
th->p_canceled = 1;
pid = th->p_pid;
/* If the thread has registered an extrication interface, then