commit a4cd1c832b934e75a93dd701b2b5bb68917d0ae3
parent 6db993320600ae0c1c2ad1d26cf48272577b0bff
Author: Kyle Milz <krwmilz@gmail.com>
Date: Thu, 19 Aug 2021 20:08:39 +0000
assume we have sigaction
Diffstat:
M | events.c | | | 47 | +---------------------------------------------- |
1 file changed, 1 insertion(+), 46 deletions(-)
diff --git a/events.c b/events.c
@@ -100,14 +100,6 @@ NOTE:
#endif /* not FLAKY_SIGPOLL */
-#if HAVE_SIGACTION && !defined SA_RESETHAND
-# ifdef SA_ONESHOT
-# define SA_RESETHAND SA_ONESHOT
-# else
-# undef HAVE_SIGACTION /* Needed for Mac OS X < 10.2 (9/2002) */
-# endif
-#endif
-
#include <poll.h>
#include <errno.h>
@@ -2880,9 +2872,6 @@ handle_sigpoll(signo)
event_counter = 1;
event_freq = -1; /* forget Plan B */
sig_flags |= SF_POLL;
-#if !HAVE_SIGACTION
- (void) signal(SIGPOLL, handle_sigpoll); /* reset the signal */
-#endif
}
#endif /* not FLAKY_SIGPOLL */
@@ -2929,12 +2918,9 @@ enable_intr() {
#ifndef FLAKY_SIGPOLL
int sock_fd = ConnectionNumber(DISP);
#endif
-#if HAVE_SIGACTION
struct sigaction a;
-#endif
#ifndef FLAKY_SIGPOLL
-#if HAVE_SIGACTION
/* Subprocess handling, e.g., MakeTeXPK, fails on the Alpha without
this, because SIGPOLL interrupts the call of system(3), since OSF/1
doesn't retry interrupted wait calls by default. From code by
@@ -2944,14 +2930,10 @@ enable_intr() {
(void) sigaddset(&a.sa_mask, SIGPOLL);
a.sa_flags = SA_RESTART;
sigaction(SIGPOLL, &a, NULL);
-#else /* not HAVE_SIGACTION */
- (void) signal(SIGPOLL, handle_sigpoll);
-#endif /* not HAVE_SIGACTION */
prep_fd(sock_fd, False);
#endif /* not FLAKY_SIGPOLL */
-#if HAVE_SIGACTION
a.sa_handler = handle_sigterm;
(void) sigemptyset(&a.sa_mask);
(void) sigaddset(&a.sa_mask, SIGINT);
@@ -2963,42 +2945,24 @@ enable_intr() {
sigaction(SIGQUIT, &a, NULL);
sigaction(SIGTERM, &a, NULL);
sigaction(SIGHUP, &a, NULL);
-#else /* not HAVE_SIGACTION */
- (void) signal(SIGINT, handle_sigterm);
- (void) signal(SIGQUIT, handle_sigterm);
- (void) signal(SIGTERM, handle_sigterm);
- (void) signal(SIGHUP, handle_sigterm);
-#endif /* not HAVE_SIGACTION */
-
-#if HAVE_SIGACTION
+
a.sa_handler = handle_sigchld;
(void) sigemptyset(&a.sa_mask);
(void) sigaddset(&a.sa_mask, SIGCHLD);
a.sa_flags = 0;
sigaction(SIGCHLD, &a, NULL);
-#else /* not HAVE_SIGACTION */
- (void) signal(SIGCHLD, handle_sigchld);
-#endif /* not HAVE_SIGACTION */
-#if HAVE_SIGACTION
a.sa_handler = handle_sigalrm;
(void) sigemptyset(&a.sa_mask);
(void) sigaddset(&a.sa_mask, SIGALRM);
a.sa_flags = 0;
sigaction(SIGALRM, &a, NULL);
-#else /* not HAVE_SIGACTION */
- (void) signal(SIGALRM, handle_sigalrm);
-#endif /* not HAVE_SIGACTION */
-#if HAVE_SIGACTION
a.sa_handler = handle_sigusr;
(void) sigemptyset(&a.sa_mask);
(void) sigaddset(&a.sa_mask, SIGUSR1);
a.sa_flags = 0;
sigaction(SIGUSR1, &a, NULL);
-#else /* not HAVE_SIGACTION */
- (void) signal(SIGUSR1, handle_sigusr);
-#endif /* not HAVE_SIGACTION */
(void) sigemptyset(&all_signals);
(void) sigaddset(&all_signals, SIGPOLL);
@@ -3060,9 +3024,6 @@ do_sigchld()
sig_flags &= ~SF_CHLD;
-#if ! HAVE_SIGACTION
- (void) signal(SIGCHLD, handle_sigchld); /* reset the signal */
-#endif
for (;;) {
#if HAVE_WAITPID
pid = waitpid(-1, &status, WNOHANG);
@@ -3291,9 +3252,6 @@ do_sigalrm()
struct timeval now;
sig_flags &= ~SF_ALRM;
-#if !HAVE_SIGACTION
- (void) signal(SIGALRM, handle_sigalrm); /* reset the signal */
-#endif
gettimeofday(&now, NULL);
@@ -3329,9 +3287,6 @@ static void
do_sigusr()
{
sig_flags &= ~SF_USR;
-#if !HAVE_SIGACTION
- (void) signal(SIGUSR1, handle_sigusr); /* reset the signal */
-#endif
if (dvi_file != NULL) {
Fclose(dvi_file);
dvi_file = NULL;