musl - musl - an implementation of the standard library for Linux-based systems

index : musl
musl - an implementation of the standard library for Linux-based systems
summary refs log tree commit diff
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2011年02月13日 19:50:47 -0500
committerRich Felker <dalias@aerifal.cx>2011年02月13日 19:50:47 -0500
commit50e26f09eb13f6568113a05dbcfe94a6b1010da0 (patch)
tree8d393d9c4ba758716bd97029234d169fc4b257bd
parentf38c154be257835d6d5112c2f92c4a4c8bed91cc (diff)
downloadmusl-50e26f09eb13f6568113a05dbcfe94a6b1010da0.tar.gz
reorganize thread exit code, make pthread_exit call cancellation handlers
Diffstat
-rw-r--r--src/thread/pthread_exit.c 25
1 files changed, 0 insertions, 25 deletions
diff --git a/src/thread/pthread_exit.c b/src/thread/pthread_exit.c
deleted file mode 100644
index 4966e234..00000000
--- a/src/thread/pthread_exit.c
+++ /dev/null
@@ -1,25 +0,0 @@
-#include "pthread_impl.h"
-
-#undef pthread_self
-
-void pthread_exit(void *result)
-{
- int i;
- struct pthread *self = pthread_self();
- self->result = result;
-
- a_dec(&libc.threads_minus_1);
- if (libc.threads_minus_1 < 0)
- exit(0);
-
- LOCK(&self->exitlock);
-
- if (self->tsd_used) for (i=0; i<PTHREAD_KEYS_MAX; i++)
- if (self->tsd[i] && libc.tsd_keys[i])
- libc.tsd_keys[i](self->tsd[i]);
-
- if (self->detached && self->map_base)
- __unmapself(self->map_base, self->map_size);
-
- __syscall_exit(0);
-}
generated by cgit v1.2.1 (git 2.18.0) at 2025年09月24日 21:16:35 +0000

AltStyle によって変換されたページ (->オリジナル) /