From ae0badd7421c76b6e5820e80a2ab3c56786dff18 Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Wed, 2 May 2007 08:03:22 +0000 Subject: Daniel Jacobowitz: sleep()/usleep() relies on nanosleep() being a cancellation point but the files have "libc_hidden_proto(nanosleep)" which means it always calls the libc.so version, never the wrapped version in libpthread.so that's a cancellation point. --- libc/unistd/sleep.c | 2 +- libc/unistd/usleep.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'libc') diff --git a/libc/unistd/sleep.c b/libc/unistd/sleep.c index 92944af18..4381c45c7 100644 --- a/libc/unistd/sleep.c +++ b/libc/unistd/sleep.c @@ -30,7 +30,7 @@ libc_hidden_proto(sigprocmask) //libc_hidden_proto(__sigaddset) //libc_hidden_proto(__sigemptyset) //libc_hidden_proto(__sigismember) -libc_hidden_proto(nanosleep) +/*libc_hidden_proto(nanosleep) need the reloc for cancellation*/ #if 0 /* This is a quick and dirty, but not 100% compliant with diff --git a/libc/unistd/usleep.c b/libc/unistd/usleep.c index 09bb09f41..91b88278d 100644 --- a/libc/unistd/usleep.c +++ b/libc/unistd/usleep.c @@ -9,7 +9,7 @@ #include #include -libc_hidden_proto(nanosleep) +/*libc_hidden_proto(nanosleep) need the reloc for cancellation*/ int usleep (__useconds_t usec) { -- cgit v1.2.3