aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/im-sandbox.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/im-sandbox.c b/src/im-sandbox.c
index bb8edcac..642c1cd3 100644
--- a/src/im-sandbox.c
+++ b/src/im-sandbox.c
@@ -895,7 +895,7 @@ void create_sandbox(struct index_args *iargs, int n_proc, char *prefix,
}
/* Set up signal handler to take action if any children die */
- sa.sa_flags = SA_SIGINFO | SA_NOCLDSTOP;
+ sa.sa_flags = SA_SIGINFO | SA_NOCLDSTOP | SA_RESTART;
sigemptyset(&sa.sa_mask);
sa.sa_sigaction = sigchld_handler;
r = sigaction(SIGCHLD, &sa, NULL);
@@ -905,7 +905,7 @@ void create_sandbox(struct index_args *iargs, int n_proc, char *prefix,
}
/* Set up signal handler to clean up semaphore on exit */
- sa.sa_flags = SA_SIGINFO | SA_NOCLDSTOP;
+ sa.sa_flags = SA_SIGINFO | SA_NOCLDSTOP | SA_RESTART;
sigemptyset(&sa.sa_mask);
sa.sa_sigaction = sigint_handler;
r = sigaction(SIGINT, &sa, NULL);