1
0
mirror of https://github.com/moparisthebest/pacman synced 2024-12-22 07:48:50 -05:00

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 <andrew.gregory.8@gmail.com>
Signed-off-by: Allan McRae <allan@archlinux.org>
This commit is contained in:
Andrew Gregory 2015-11-30 12:16:48 -05:00 committed by Allan McRae
parent 85508b478e
commit 8d11aa3cdf

View File

@ -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 */