From e8bbe214993c4514a00c5aac264ab1648aad0a71 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Thu, 4 Jul 2019 02:39:11 +0200 Subject: [PATCH] signal: Make sure that the signal mask is actually unsigned long. * lib/linux/signal.c (signal): Make sure that the signal mask is actually unsigned long. --- lib/linux/signal.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/linux/signal.c b/lib/linux/signal.c index 7940a00f..75352599 100644 --- a/lib/linux/signal.c +++ b/lib/linux/signal.c @@ -47,7 +47,7 @@ signal (int signum, sighandler_t action) setup_action.sa_restorer = _restorer; bitindex = signum - 1; itembitcount = 8 * sizeof(setup_action.sa_mask.items[0]); - setup_action.sa_mask.items[bitindex / itembitcount] = 1 << (bitindex % itembitcount); + setup_action.sa_mask.items[bitindex / itembitcount] = 1UL << (bitindex % itembitcount); old.sa_handler = SIG_DFL; setup_action.sa_flags = SA_RESTORER | SA_RESTART; int r = _sys_call4 (SYS_rt_sigaction, signum, &setup_action, &old, sizeof (sigset_t));