about summary refs log tree commit diff
path: root/sysdeps/unix/sysv/linux/i386/sigaction.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1999-06-06 13:17:22 +0000
committerUlrich Drepper <drepper@redhat.com>1999-06-06 13:17:22 +0000
commit61bdd24fafd8b3ce6b7ad592ee7dba4c22676fb3 (patch)
treecc8113b25e87c342989a681c4a3dc6241f0c4a6e /sysdeps/unix/sysv/linux/i386/sigaction.c
parenta582750d701263b71ff9d0a85795598872d510a7 (diff)
downloadglibc-61bdd24fafd8b3ce6b7ad592ee7dba4c22676fb3.tar.gz
glibc-61bdd24fafd8b3ce6b7ad592ee7dba4c22676fb3.tar.xz
glibc-61bdd24fafd8b3ce6b7ad592ee7dba4c22676fb3.zip
Update.
1999-06-06  Andi Kleen  <ak@muc.de>

	* sysdeps/unix/sysv/linux/i386/sigaction.c (__sigaction): Set
	SA_RESTORER flag.
Diffstat (limited to 'sysdeps/unix/sysv/linux/i386/sigaction.c')
-rw-r--r--sysdeps/unix/sysv/linux/i386/sigaction.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sysdeps/unix/sysv/linux/i386/sigaction.c b/sysdeps/unix/sysv/linux/i386/sigaction.c
index 29f9fc5be8..db91e52132 100644
--- a/sysdeps/unix/sysv/linux/i386/sigaction.c
+++ b/sysdeps/unix/sysv/linux/i386/sigaction.c
@@ -69,7 +69,7 @@ __sigaction (int sig, const struct sigaction *act, struct sigaction *oact)
 	{
 	  kact.k_sa_handler = act->sa_handler;
 	  memcpy (&kact.sa_mask, &act->sa_mask, sizeof (sigset_t));
-	  kact.sa_flags = act->sa_flags;
+	  kact.sa_flags = act->sa_flags | SA_RESTORER;
 
 	  kact.sa_restorer = ((act->sa_flags & SA_NOMASK)
 			      ? &&restore_nomask : &&restore);
@@ -106,7 +106,7 @@ __sigaction (int sig, const struct sigaction *act, struct sigaction *oact)
     {
       k_newact.k_sa_handler = act->sa_handler;
       k_newact.sa_mask = act->sa_mask.__val[0];
-      k_newact.sa_flags = act->sa_flags;
+      k_newact.sa_flags = act->sa_flags | SA_RESTORER;
 
       k_newact.sa_restorer = ((act->sa_flags & SA_NOMASK)
 			      ? &&restore_nomask : &&restore);