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.
This commit is contained in:
William Lallemand 2019-11-19 17:04:18 +01:00
parent 0bc9c8a243
commit 677e2f2c35
1 changed files with 1 additions and 1 deletions

View File

@ -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)