MINOR: cfgparse: fix *thread keywords sensitive to global section position

*thread keywords parsers are sensitive to global section position. If they are
present there, the global section must be the first section in the
configuration. *thread parsers logic is based on non_global_section_parsed
counter. So, we need to reset it explicitly before the second configuration
read done by worker or in a standalone mode.
This commit is contained in:
Valentine Krasnobaeva 2024-10-15 15:21:47 +02:00 committed by Willy Tarreau
parent 0ed262d7bf
commit 223caab96f

View File

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