diff options
author | Richard M. Stallman <rms@gnu.org> | 2002-07-11 17:29:56 +0000 |
---|---|---|
committer | Richard M. Stallman <rms@gnu.org> | 2002-07-11 17:29:56 +0000 |
commit | ee6ef24cbbcac3c0bc71bfb68da9c19b2f877343 (patch) | |
tree | 351490d4847fe4dda790c782f05872f4bac0c6e7 /src/sysdep.c | |
parent | e2452d92ef902636e1e4e583d48bd08d13d8ff9f (diff) | |
download | emacs-ee6ef24cbbcac3c0bc71bfb68da9c19b2f877343.tar.gz |
(sys_signal): Test BROKEN_SA_RESTART.
Diffstat (limited to 'src/sysdep.c')
-rw-r--r-- | src/sysdep.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/sysdep.c b/src/sysdep.c index 383be4b9df6..f2ac20ae4a5 100644 --- a/src/sysdep.c +++ b/src/sysdep.c @@ -2816,10 +2816,12 @@ sys_signal (int signal_number, signal_handler_t action) struct sigaction new_action, old_action; sigemptyset (&new_action.sa_mask); new_action.sa_handler = action; -#ifdef SA_RESTART +#if defined (SA_RESTART) && ! defined (BROKEN_SA_RESTART) /* Emacs mostly works better with restartable system services. If this - * flag exists, we probably want to turn it on here. - */ + flag exists, we probably want to turn it on here. + However, on some systems this resets the timeout of `select' + which means that `select' never finishes if it keeps getting signals. + BROKEN_SA_RESTART is defined on those systems. */ new_action.sa_flags = SA_RESTART; #else new_action.sa_flags = 0; |