Shell: Put background jobs into new process groups too

Fixes #4345.
This was done in 54b453b in the name of "fixing event loop processing in
subshells", but I do not see how a new PGID is supposed to affect the event
loop.
This seems to have been done by mistake, let's see if any tests fail
because of this.
This commit is contained in:
AnotherTest 2020-12-07 00:47:21 +03:30 committed by Andreas Kling
parent 59b46a1f51
commit cd8268e6fb
Notes: sideshowbarker 2024-07-19 00:58:33 +09:00

View file

@ -816,7 +816,7 @@ RefPtr<Job> Shell::run_command(const AST::Command& command)
}
pid_t pgid = is_first ? child : (command.pipeline ? command.pipeline->pgid : child);
if ((!m_is_subshell && command.should_wait) || command.pipeline) {
if (!m_is_subshell || command.pipeline) {
if (setpgid(child, pgid) < 0 && m_is_interactive)
perror("setpgid");