changeset 2056:cf3d523888c5

*** empty log message ***
author Jim Meyering <jim@meyering.net>
date Sun, 26 Dec 1999 10:16:18 +0000
parents 644068f5da98
children 50da17269b1b
files lib/nanosleep.c
diffstat 1 files changed, 11 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/lib/nanosleep.c
+++ b/lib/nanosleep.c
@@ -22,11 +22,15 @@
 #include <sys/types.h>
 #include <signal.h>
 
+#if HAVE_UNISTD_H
+# include <unistd.h>
+#endif
+
 #include <time.h>
 /* FIXME: is including both like this kosher?  */
 #include <sys/time.h>
 
-static interrupted;
+static int suspended;
 
 /* Handle SIGCONT. */
 
@@ -51,12 +55,12 @@
 /* Sleep for USEC microseconds. */
 
 static void
-usleep (const struct timespec *ts_delay)
+my_usleep (const struct timespec *ts_delay)
 {
   struct timeval tv_delay;
   tv_delay.tv_sec = ts_delay->tv_sec;
   tv_delay.tv_usec = 1000 * ts_delay->tv_nsec;
-  select (0, (void *) 0, (void *) 0, (void *) 0, tv_delay);
+  select (0, (void *) 0, (void *) 0, (void *) 0, &tv_delay);
 }
 
 int
@@ -67,7 +71,7 @@
   struct sigaction oldact, newact;
 #endif
 
-  interrupted = 0;
+  suspended = 0;
 
   /* set up sig handler -- but maybe only do this the first time?  */
 #ifdef SA_INTERRUPT
@@ -83,9 +87,9 @@
     signal (SIGCONT, sighandler);
 #endif
 
-  usleep (requested_delay);
+  my_usleep (requested_delay);
 
-  if (interrupted)
+  if (suspended)
     {
       /* Calculate time remaining.  */
       /* FIXME: the code in sleep doesn't use this, so there's no
@@ -94,5 +98,5 @@
 
   /* FIXME: Restore sig handler?  */
 
-  return interrupted;
+  return suspended;
 }