diff --git a/exec.c b/exec.c index cd594977..de9b2cad 100644 --- a/exec.c +++ b/exec.c @@ -105,8 +105,8 @@ int run(char *cmd) struct sigaction sa; /* Reset signal handlers that were set by the parent process */ - for (i = 1; i < NSIG; i++) - DFLSIG(sa, i, 0); + sig_unblock(); + setsid(); /* Always redirect stdio for run() */ fp = fopen("/dev/null", "w");