fix bug in dladdr that prevented resolving addresses in the PLT
[oweals/musl.git] / src / time / timer_gettime.c
index 3d3156a060290cf3b743eda1cb9526e9fe7dba72..5a85821894cfa57b6728ee207e3a90d2a9c3a1b7 100644 (file)
@@ -3,5 +3,6 @@
 
 int timer_gettime(timer_t t, struct itimerspec *val)
 {
-       return syscall(SYS_timer_gettime, t->timerid, val);
+       if ((uintptr_t)t >= 0x100000) t = ((pthread_t)t)->result;
+       return syscall(SYS_timer_gettime, (long)t, val);
 }