From: William Lallemand Date: Tue, 19 Nov 2019 16:04:18 +0000 (+0100) Subject: BUG/MEDIUM: mworker: don't fill the -sf argument with -1 during the reexec X-Git-Tag: v2.1.0~36 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=677e2f2c35444f4eda93c363946ba473ddc16a88;p=thirdparty%2Fhaproxy.git BUG/MEDIUM: mworker: don't fill the -sf argument with -1 during the reexec Upon a reexec_on_failure, if the process tried to exit after the initialization of the process structure but before it was filled with a PID, the PID in the mworker_proc structure is set to -1. In this particular case the -sf argument is filled with -1 and haproxy will exit with the usage message because of that argument. Should be backported in 2.0. --- diff --git a/src/haproxy.c b/src/haproxy.c index 84a3384b10..699a1fea0e 100644 --- a/src/haproxy.c +++ b/src/haproxy.c @@ -787,7 +787,7 @@ void mworker_reload() next_argv[next_argc++] = "-sf"; list_for_each_entry(child, &proc_list, list) { - if (!(child->options & (PROC_O_TYPE_WORKER|PROC_O_TYPE_PROG))) + if (!(child->options & (PROC_O_TYPE_WORKER|PROC_O_TYPE_PROG)) || child->pid <= -1 ) continue; next_argv[next_argc] = memprintf(&msg, "%d", child->pid); if (next_argv[next_argc] == NULL)