Ignored handlers are not reset by exec() calls
@ -1963,6 +1963,8 @@ run(char *startup_cmd)
if ((child_pid = fork()) < 0)
die("startup: fork:");
if (child_pid == 0) {
sa.sa_handler = SIG_DFL;
sigaction(SIGCHLD, &sa, NULL);
dup2(piperw[0], STDIN_FILENO);
close(piperw[0]);
close(piperw[1]);