Mercurial > hg > xemacs-beta
comparison src/syssignal.h @ 380:8626e4521993 r21-2-5
Import from CVS: tag r21-2-5
author | cvs |
---|---|
date | Mon, 13 Aug 2007 11:07:10 +0200 |
parents | cc15677e0335 |
children | 74fd4e045ea6 |
comparison
equal
deleted
inserted
replaced
379:76b7d63099ad | 380:8626e4521993 |
---|---|
110 #undef signal | 110 #undef signal |
111 #define signal sys_do_signal | 111 #define signal sys_do_signal |
112 | 112 |
113 #define EMACS_BLOCK_SIGNAL(sig) do \ | 113 #define EMACS_BLOCK_SIGNAL(sig) do \ |
114 { \ | 114 { \ |
115 sigset_t _mask; \ | 115 sigset_t ES_mask; \ |
116 sigemptyset (&_mask); \ | 116 sigemptyset (&ES_mask); \ |
117 sigaddset (&_mask, sig); \ | 117 sigaddset (&ES_mask, sig); \ |
118 sigprocmask (SIG_BLOCK, &_mask, NULL); \ | 118 sigprocmask (SIG_BLOCK, &ES_mask, NULL); \ |
119 } while (0) | 119 } while (0) |
120 #define EMACS_UNBLOCK_SIGNAL(sig) do \ | 120 #define EMACS_UNBLOCK_SIGNAL(sig) do \ |
121 { \ | 121 { \ |
122 sigset_t _mask; \ | 122 sigset_t ES_mask; \ |
123 sigemptyset (&_mask); \ | 123 sigemptyset (&ES_mask); \ |
124 sigaddset (&_mask, sig); \ | 124 sigaddset (&ES_mask, sig); \ |
125 sigprocmask (SIG_UNBLOCK, &_mask, NULL); \ | 125 sigprocmask (SIG_UNBLOCK, &ES_mask, NULL); \ |
126 } while (0) | 126 } while (0) |
127 #define EMACS_UNBLOCK_ALL_SIGNALS() do \ | 127 #define EMACS_UNBLOCK_ALL_SIGNALS() do \ |
128 { \ | 128 { \ |
129 sigset_t _mask; \ | 129 sigset_t ES_mask; \ |
130 sigemptyset (&_mask); \ | 130 sigemptyset (&ES_mask); \ |
131 sigprocmask (SIG_SETMASK, &_mask, NULL); \ | 131 sigprocmask (SIG_SETMASK, &ES_mask, NULL); \ |
132 } while (0) | 132 } while (0) |
133 #define EMACS_WAIT_FOR_SIGNAL(sig) do \ | 133 #define EMACS_WAIT_FOR_SIGNAL(sig) do \ |
134 { \ | 134 { \ |
135 sigset_t _mask; \ | 135 sigset_t ES_mask; \ |
136 sigprocmask (0, NULL, &_mask); \ | 136 sigprocmask (0, NULL, &ES_mask); \ |
137 sigdelset (&_mask, sig); \ | 137 sigdelset (&ES_mask, sig); \ |
138 sigsuspend (&_mask); \ | 138 sigsuspend (&ES_mask); \ |
139 } while (0) | 139 } while (0) |
140 #define EMACS_REESTABLISH_SIGNAL(sig, handler) | 140 #define EMACS_REESTABLISH_SIGNAL(sig, handler) |
141 | 141 |
142 #elif defined (HAVE_SIGBLOCK) | 142 #elif defined (HAVE_SIGBLOCK) |
143 | 143 |
157 #define EMACS_BLOCK_SIGNAL(sig) sigblock (sigmask (sig)) | 157 #define EMACS_BLOCK_SIGNAL(sig) sigblock (sigmask (sig)) |
158 #define EMACS_UNBLOCK_SIGNAL(sig) sigsetmask (sigblock (0) & ~sigmask (sig)) | 158 #define EMACS_UNBLOCK_SIGNAL(sig) sigsetmask (sigblock (0) & ~sigmask (sig)) |
159 #define EMACS_UNBLOCK_ALL_SIGNALS() sigsetmask (0) | 159 #define EMACS_UNBLOCK_ALL_SIGNALS() sigsetmask (0) |
160 #define EMACS_WAIT_FOR_SIGNAL(sig) do \ | 160 #define EMACS_WAIT_FOR_SIGNAL(sig) do \ |
161 { \ | 161 { \ |
162 int _mask = sigblock (0); \ | 162 int ES_mask = sigblock (0); \ |
163 sigpause (_mask & ~sigmask (sig)); \ | 163 sigpause (ES_mask & ~sigmask (sig)); \ |
164 } while (0) | 164 } while (0) |
165 #define EMACS_REESTABLISH_SIGNAL(sig, handler) | 165 #define EMACS_REESTABLISH_SIGNAL(sig, handler) |
166 | 166 |
167 #elif defined (HAVE_SIGHOLD) | 167 #elif defined (HAVE_SIGHOLD) |
168 | 168 |