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

do not catch SIGTERM

On SIGTERM pacman was exiting immediately, even in the middle of
a transaction.  In this case we should leave the lock file in place as
an indication that the database may not be in a consistent state.

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:10:58 -05:00 committed by Allan McRae
parent 7fb8a299c2
commit 85508b478e

View File

@ -334,8 +334,7 @@ static void handler(int signum)
columns_cache_reset();
return;
}
/* SIGINT/SIGHUP: no committing transaction, release it now and then exit pacman
* SIGTERM: release no matter what */
/* SIGINT/SIGHUP: no committing transaction, release it now and then exit pacman */
alpm_unlock(config->handle);
/* output a newline to be sure we clear any line we may be on */
xwrite(out, "\n", 1);
@ -1138,7 +1137,7 @@ int main(int argc, char *argv[])
int ret = 0;
size_t i;
struct sigaction new_action, old_action;
const int signals[] = { SIGHUP, SIGINT, SIGTERM, SIGSEGV, SIGWINCH };
const int signals[] = { SIGHUP, SIGINT, SIGSEGV, SIGWINCH };
uid_t myuid = getuid();
/* Set signal handlers */