]> git.tue.mpg.de Git - paraslash.git/commit
gui: Kill also child processes of external commands.
authorAndre Noll <maan@tuebingen.mpg.de>
Mon, 19 Aug 2024 19:41:23 +0000 (21:41 +0200)
committerAndre Noll <maan@tuebingen.mpg.de>
Tue, 17 Sep 2024 15:58:38 +0000 (17:58 +0200)
commit7314d67a2097794caefcb19d917f198a3cbfd3ae
treefd3729065dfec6c3b8a381e313892db796647b69
parent7d391cdac1e8790bd5b6dd3ed56ed2c8d4a58de7
gui: Kill also child processes of external commands.

When a command is executed as a display command from para_gui, and
the command is interrupted from within para_gui by pressing any key,
para_gui only kills the spawned process but leaves alone its child
processes.

Address this problem by putting the spawned process into a separate
process group so that we can easily kill all processes of the group
by passing the negated PID of the child to kill(2).

In theory, the change in exec.c also affects para_mixer, which executes
para_client and para_audioc. However, para_mixer never kills any of
its child processes.
exec.c
gui.c