diff options
| author | _ov4 <ov4@ov4.org> | 2026-09-01 10:59:29 +0000 |
|---|---|---|
| committer | _ov4 <ov4@ov4.org> | 2026-09-01 10:59:29 +0000 |
| commit | 07631a9e2060794934ae7528afaf5257cb8568f6 (patch) | |
| tree | c4830aae86314e493fbf1ba37569c349734750a4 /src/ground.cc | |
| parent | 6d9469d916bb80aa76c82097e60b725de1661d5c (diff) | |
fix
Diffstat (limited to 'src/ground.cc')
| -rw-r--r-- | src/ground.cc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/ground.cc b/src/ground.cc index 265a22d..53f8652 100644 --- a/src/ground.cc +++ b/src/ground.cc @@ -83,8 +83,13 @@ void do_bgfg(char **argv) sigset_t prev_with_sigchld_blocked = prev; sigaddset(&prev_with_sigchld_blocked, SIGCHLD); sigprocmask(SIG_SETMASK, &prev_with_sigchld_blocked, NULL); + + sigprocmask(SIG_BLOCK, &block_io, nullptr); + tcsetpgrp(tty_fd, j->pid); + if (kill(-(j->pid), SIGCONT) < 0) { + tcsetpgrp(tty_fd, shell_pgid); cerr << "Cannot continue process " << j->pid; sigprocmask(SIG_SETMASK, &prev, NULL); return; |
