summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--setjmp.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/setjmp.c b/setjmp.c
index 6728bef..b740be5 100644
--- a/setjmp.c
+++ b/setjmp.c
@@ -40,6 +40,10 @@ int test_setjmp(void)
sigprocmask(SIG_UNBLOCK, &set, &set);
oldset = set;
+ /* Improve the chances of catching failure of sigsetjmp to
+ * properly save the signal mask in the sigjmb_buf. */
+ memset(&sjb, -1, sizeof sjb);
+
if (!sigsetjmp(sjb, 1)) {
sigemptyset(&set);
sigaddset(&set, SIGUSR1);