Mercurial > emacs
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