|
@@ -40,12 +40,14 @@ clock_nanosleep (clockid_t clock_id, int flags, const struct timespec *req,
|
|
r = INTERNAL_SYSCALL (clock_nanosleep, err, 4, clock_id, flags, req, rem);
|
|
r = INTERNAL_SYSCALL (clock_nanosleep, err, 4, clock_id, flags, req, rem);
|
|
else
|
|
else
|
|
{
|
|
{
|
|
|
|
+#ifdef __NEW_THREADS
|
|
int oldstate = LIBC_CANCEL_ASYNC ();
|
|
int oldstate = LIBC_CANCEL_ASYNC ();
|
|
|
|
|
|
r = INTERNAL_SYSCALL (clock_nanosleep, err, 4, clock_id, flags, req,
|
|
r = INTERNAL_SYSCALL (clock_nanosleep, err, 4, clock_id, flags, req,
|
|
rem);
|
|
rem);
|
|
|
|
|
|
LIBC_CANCEL_RESET (oldstate);
|
|
LIBC_CANCEL_RESET (oldstate);
|
|
|
|
+#endif
|
|
}
|
|
}
|
|
|
|
|
|
return (INTERNAL_SYSCALL_ERROR_P (r, err)
|
|
return (INTERNAL_SYSCALL_ERROR_P (r, err)
|