X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Fnanosleep.c;h=902fd2dfe0f258e90656538ead77e7526f383d53;hb=4cb984dac2d2acc60cfbde042c72b9dcafd40177;hp=0adad88002389c4eb00b84ac6b8f0e46d9b15a1e;hpb=19e03725a5160847ec25e1ac559cedb86bf67205;p=gnulib.git diff --git a/lib/nanosleep.c b/lib/nanosleep.c index 0adad8800..902fd2dfe 100644 --- a/lib/nanosleep.c +++ b/lib/nanosleep.c @@ -1,5 +1,5 @@ /* Provide a replacement for the POSIX nanosleep function. - Copyright (C) 1999, 2000 Free Software Foundation, Inc. + Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -18,6 +18,11 @@ /* written by Jim Meyering */ #include + +/* Undefine nanosleep here so any prototype is not redefined to be a + prototype for rpl_nanosleep. (they'd conflict e.g., on alpha-dec-osf3.2) */ +#undef nanosleep + #include #include #include @@ -31,7 +36,14 @@ extern int errno; # include #endif -#include "nanosleep.h" +/* Some systems (MSDOS) don't have SIGCONT. + Using SIGTERM here turns the signal-handling code below + into a no-op on such systems. */ +#ifndef SIGCONT +# define SIGCONT SIGTERM +#endif + +#include "timespec.h" static int suspended; int first_call = 1; @@ -58,8 +70,8 @@ my_usleep (const struct timespec *ts_delay) /* FIXME: comment */ int -nanosleep (const struct timespec *requested_delay, - struct timespec *remaining_delay) +rpl_nanosleep (const struct timespec *requested_delay, + struct timespec *remaining_delay) { #ifdef SA_NOCLDSTOP struct sigaction oldact, newact;