diff options
Diffstat (limited to 'src/eval.cc')
| -rw-r--r-- | src/eval.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/eval.cc b/src/eval.cc index 09d1196..0dbab40 100644 --- a/src/eval.cc +++ b/src/eval.cc @@ -61,10 +61,10 @@ void eval(char *cmdline) if (!ground) // foreground tcsetpgrp(tty_fd, getpgrp()); + sigprocmask(SIG_SETMASK, &prev, nullptr); + // program inside execve may use SIGTTIN/SIGTTOU so just restore in child sigprocmask(SIG_UNBLOCK, &block_io, nullptr); - - sigprocmask(SIG_SETMASK, &prev, nullptr); execve(cmd_c, argv, environ); |
