In the event of a `^C` while hook scripts are running, ensure that the hook processes are cleaned up and do not become zombies. This also ensures that upon `^C` execution is not handed back to the terminal until the processes have been waited upon. Signed-off-by: Anthony Sottile <asottile@xxxxxxxxx> --- run-command.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/run-command.c b/run-command.c index f5e1149..75d3b73 100644 --- a/run-command.c +++ b/run-command.c @@ -1358,6 +1358,8 @@ int run_hook_ve(const char *const *env, const char *name, va_list args) hook.no_stdin = 1; hook.stdout_to_stderr = 1; hook.trace2_hook_name = name; + hook.clean_on_exit = 1; + hook.wait_after_clean = 1; return run_command(&hook); } -- 2.25.GIT