--- a/src/server/config/initconf.c Wed Nov 02 19:19:01 2022 +0100 +++ b/src/server/config/initconf.c Sun Nov 06 15:53:32 2022 +0100 @@ -54,11 +54,12 @@ } void free_init_config(InitConfig *conf) { - ucx_mempool_destroy(conf->parser.mp->pool); + // TODO: fix + //ucx_mempool_destroy(conf->parser.mp->pool); free(conf); } -int initconf_parse(void *p, ConfigLine *begin, ConfigLine *end, sstr_t line) { +int initconf_parse(void *p, ConfigLine *begin, ConfigLine *end, cxmutstr line) { InitConfig *conf = p; // parse directive @@ -70,7 +71,11 @@ d->begin = begin; d->end = end; if(d->type_num == INIT_DIRECTIVE) { - conf->directives = ucx_list_append(conf->directives, d); + //conf->directives = ucx_list_append(conf->directives, d); + ConfigDirectiveList *dir_entry = cxMalloc(conf->parser.mp, sizeof(ConfigDirectiveList)); + dir_entry->directive = d; + dir_entry->next = NULL; + CFG_DIRECTIVES_ADD(&conf->directives, dir_entry); } else { log_ereport(LOG_WARN, "Non Init directive in init.conf"); }