changeset 29811:f3db799f7b1e

(sigblock, sigunblock) [USG5_4]: Set sigprocmask_set, and pass a pointer to it to sigprocmask.
author Gerd Moellmann <gerd@gnu.org>
date Tue, 20 Jun 2000 18:31:04 +0000
parents 4406a040b043
children e4f28eb9a373
files src/syssignal.h
diffstat 1 files changed, 8 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/syssignal.h	Tue Jun 20 18:30:44 2000 +0000
+++ b/src/syssignal.h	Tue Jun 20 18:31:04 2000 +0000
@@ -78,11 +78,17 @@
 #else /* ! defined (POSIX_SIGNALS) */
 #ifdef USG5_4
 
+extern SIGMASKTYPE sigprocmask_set;
+
 #ifndef sigblock
-#define sigblock(sig) (sigprocmask (SIG_BLOCK, SIGEMPTYMASK | sig, NULL))
+#define sigblock(sig)					\
+     (sigprocmask_set = SIGEMPTYMASK | (sig),		\
+      sigprocmask (SIG_BLOCK, &sigprocmask_set, NULL))
 #endif
 
-#define sigunblock(sig) (sigprocmask (SIG_SETMASK, SIGFULLMASK & ~(sig), NULL))
+#define sigunblock(sig)						\
+     (sigprocmask_set = SIGFULLMASK & ~(sig),			\
+      sigprocmask (SIG_SETMASK, &sigprocmask_set, NULL))
 
 #else
 #ifdef USG