From 8d11aa3cdf284ebd5b0239b3e3e2f0c39ec7c3ba Mon Sep 17 00:00:00 2001 From: Andrew Gregory Date: Mon, 30 Nov 2015 12:16:48 -0500 Subject: [PATCH] remove SIG_IGN check when setting signal handler Our signal handler provides a way to gracefully interrupt a transaction and should always be set. The check appears to have originally been copied directly from the glibc manual. Signed-off-by: Andrew Gregory Signed-off-by: Allan McRae --- src/pacman/pacman.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/pacman/pacman.c b/src/pacman/pacman.c index d6ceeae0..05b8cd31 100644 --- a/src/pacman/pacman.c +++ b/src/pacman/pacman.c @@ -1136,7 +1136,7 @@ int main(int argc, char *argv[]) { int ret = 0; size_t i; - struct sigaction new_action, old_action; + struct sigaction new_action; const int signals[] = { SIGHUP, SIGINT, SIGSEGV, SIGWINCH }; uid_t myuid = getuid(); @@ -1148,11 +1148,7 @@ int main(int argc, char *argv[]) /* assign our handler to any signals we care about */ for(i = 0; i < ARRAYSIZE(signals); i++) { - int signal = signals[i]; - sigaction(signal, NULL, &old_action); - if(old_action.sa_handler != SIG_IGN) { - sigaction(signal, &new_action, NULL); - } + sigaction(signals[i], &new_action, NULL); } /* i18n init */