use libc-internal malloc for newlocale/freelocale
[musl] / src / time / timer_delete.c
index c81f921..b0bfac0 100644 (file)
@@ -7,8 +7,8 @@ int timer_delete(timer_t t)
        if ((intptr_t)t < 0) {
                pthread_t td = (void *)((uintptr_t)t << 1);
                a_store(&td->timer_id, td->timer_id | INT_MIN);
-               __wake(&td->timer_id, 1, 1);
+               __syscall(SYS_tkill, td->tid, SIGTIMER);
                return 0;
        }
-       return __syscall(SYS_timer_delete, (long)t);
+       return __syscall(SYS_timer_delete, t);
 }