Reset ignored signal handler in spawn() as well
This commit is contained in:
parent
df11b7a786
commit
9c592da01f
1 changed files with 3 additions and 0 deletions
3
dwl.c
3
dwl.c
|
@ -2327,6 +2327,9 @@ void
|
||||||
spawn(const Arg *arg)
|
spawn(const Arg *arg)
|
||||||
{
|
{
|
||||||
if (fork() == 0) {
|
if (fork() == 0) {
|
||||||
|
struct sigaction sa = {.sa_flags = SA_RESTART, .sa_handler = SIG_DFL};
|
||||||
|
sigemptyset(&sa.sa_mask);
|
||||||
|
sigaction(SIGCHLD, &sa, NULL);
|
||||||
dup2(STDERR_FILENO, STDOUT_FILENO);
|
dup2(STDERR_FILENO, STDOUT_FILENO);
|
||||||
setsid();
|
setsid();
|
||||||
execvp(((char **)arg->v)[0], (char **)arg->v);
|
execvp(((char **)arg->v)[0], (char **)arg->v);
|
||||||
|
|
Loading…
Reference in a new issue