foolowup: improve/add comments and spacing
authorThomas Lamprecht <t.lamprecht@proxmox.com>
Fri, 29 Jun 2018 09:57:49 +0000 (11:57 +0200)
committerThomas Lamprecht <t.lamprecht@proxmox.com>
Fri, 29 Jun 2018 09:58:05 +0000 (11:58 +0200)
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
src/PVE/RESTEnvironment.pm

index 3155aac..6a53741 100644 (file)
@@ -496,10 +496,11 @@ sub fork_worker {
        $SIG{CHLD} = $SIG{PIPE} = 'DEFAULT';
        $SIG{TTOU} = 'IGNORE';
 
-       # set sess/process group - we want to be able to kill the
-       # whole process group
+       # set session/process group allows to kill the process group
        if ($sync && -t STDIN) {
-           POSIX::setpgid(0,0) or die "failed to setpgid: $!\n";;
+           # some sync'ed workers operate on the tty but setsid sessions lose
+           # the tty, so just create a new pgroup and give it the tty
+           POSIX::setpgid(0, 0) or die "failed to setpgid: $!\n";;
            POSIX::tcsetpgrp(fileno(STDIN), $$) or die "failed to tcsetpgrp: $!\n";
        } else {
            POSIX::setsid();