From: Markus Armbruster Date: Sun, 27 Dec 2020 07:07:24 +0000 (+0100) Subject: lwp: Fix unsafe update of LwpSigCaught X-Git-Url: http://git.pond.sub.org/?p=empserver;a=commitdiff_plain;h=5315db952d1b5ae4fd86c6ffd3e17de77e890025 lwp: Fix unsafe update of LwpSigCaught lwpCatchAwaitedSig() is not reentrant. lwpInitSigWait() attempts to protect it by setting an appropriate signal mask, but screws up. This could conceivably lose signals. Messed up when it got added in commit 7183516d9, v4.3.6. Fix it. Signed-off-by: Markus Armbruster --- diff --git a/src/lib/lwp/sig.c b/src/lib/lwp/sig.c index eb5361314..cdf29709b 100644 --- a/src/lib/lwp/sig.c +++ b/src/lib/lwp/sig.c @@ -67,7 +67,6 @@ lwpInitSigWait(sigset_t *set) act.sa_flags = 0; act.sa_mask = *set; - sigemptyset(&act.sa_mask); act.sa_handler = lwpCatchAwaitedSig; for (i = 0; i < NSIG; i++) { if (sigismember(set, i))