diff --git a/src/haproxy.c b/src/haproxy.c index 0ecf42a21..31fb7fe5c 100644 --- a/src/haproxy.c +++ b/src/haproxy.c @@ -2214,6 +2214,13 @@ static void init(int argc, char **argv) /* worker, daemon, foreground mode reads the rest of the config */ if (!(global.mode & MODE_MWORKER)) { + /* nbthread and *thread keywords parsers are sensible to global + * section position, it should be placed as the first in + * the configuration, if these keywords are inside. So, let's + * reset non_global_section_parsed counter for the second + * configuration reading + */ + non_global_section_parsed = 0; if (read_cfg(progname) < 0) { list_for_each_entry_safe(cfg, cfg_tmp, &cfg_cfgfiles, list) { ha_free(&cfg->content);