Safe and reset errno so that errno isn't set to ENOSYS in the first
authordrepper <drepper>
Tue, 3 Mar 1998 17:57:52 +0000 (17:57 +0000)
committerdrepper <drepper>
Tue, 3 Mar 1998 17:57:52 +0000 (17:57 +0000)
call.

sysdeps/unix/sysv/linux/i386/sigaction.c

index a6d2b63..0110a80 100644 (file)
@@ -48,6 +48,7 @@ __sigaction (int sig, const struct sigaction *act, struct sigaction *oact)
   if (!__libc_missing_rt_sigs)
     {
       struct kernel_sigaction kact, koact;
+      int saved_errno = errno;
 
       if (act)
        {
@@ -76,6 +77,7 @@ __sigaction (int sig, const struct sigaction *act, struct sigaction *oact)
          return result;
        }
 
+      __set_errno (saved_errno);
       __libc_missing_rt_sigs = 1;
     }