minor bugfix (avoid unlikely race)
authorMike Karels <karels@ucbvax.Berkeley.EDU>
Mon, 12 Sep 1983 12:57:10 +0000 (04:57 -0800)
committerMike Karels <karels@ucbvax.Berkeley.EDU>
Mon, 12 Sep 1983 12:57:10 +0000 (04:57 -0800)
SCCS-vsn: lib/libc/gen/sleep.c 4.6

usr/src/lib/libc/gen/sleep.c

index 6c5a6c9..92f5351 100644 (file)
@@ -1,5 +1,5 @@
 #ifndef lint
 #ifndef lint
-static char sccsid[] = "@(#)sleep.c    4.5 (Berkeley) %G%";
+static char sccsid[] = "@(#)sleep.c    4.6 (Berkeley) %G%";
 #endif
 
 #include <sys/time.h>
 #endif
 
 #include <sys/time.h>
@@ -45,8 +45,8 @@ sleep(n)
        }
        setvec(vec, sleepx);
        (void) sigvec(SIGALRM, &vec, &ovec);
        }
        setvec(vec, sleepx);
        (void) sigvec(SIGALRM, &vec, &ovec);
-       (void) setitimer(ITIMER_REAL, itp, (struct itimerval *)0);
        ringring = 0;
        ringring = 0;
+       (void) setitimer(ITIMER_REAL, itp, (struct itimerval *)0);
        while (!ringring)
                sigpause(omask &~ mask(SIGALRM));
        (void) sigvec(SIGALRM, &ovec, (struct sigvec *)0);
        while (!ringring)
                sigpause(omask &~ mask(SIGALRM));
        (void) sigvec(SIGALRM, &ovec, (struct sigvec *)0);