diff options
author | Rich Felker <dalias@aerifal.cx> | 2011-04-09 02:26:55 -0400 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2011-04-09 02:26:55 -0400 |
commit | 2063c4cac27f118c21dcb9352e8a4903131c88c8 (patch) | |
tree | 21f274f8b6db695a46996e66e8e850f6867ac5af /src | |
parent | 82171d6ac0d84876cdc6dd6319b0790b42cdb47e (diff) | |
download | musl-2063c4cac27f118c21dcb9352e8a4903131c88c8.tar.gz musl-2063c4cac27f118c21dcb9352e8a4903131c88c8.tar.xz musl-2063c4cac27f118c21dcb9352e8a4903131c88c8.zip |
run pthread tsd destructors when a timer thread pretends to exit
Diffstat (limited to 'src')
-rw-r--r-- | src/time/timer_create.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/time/timer_create.c b/src/time/timer_create.c index 1b184f74..c107e150 100644 --- a/src/time/timer_create.c +++ b/src/time/timer_create.c @@ -13,11 +13,17 @@ struct start_args { struct sigevent *sev; }; +static void dummy_1(pthread_t self) +{ +} +weak_alias(dummy_1, __pthread_tsd_run_dtors); + static void cleanup_fromsig(void *p) { pthread_t self = __pthread_self(); self->cancel = 0; self->cancelbuf = 0; + __pthread_tsd_run_dtors(self); longjmp(p, 1); } |