--- a/src/server/daemon/config.c Mon Feb 10 17:44:51 2025 +0100 +++ b/src/server/daemon/config.c Sun Mar 02 18:10:52 2025 +0100 @@ -193,7 +193,7 @@ return NULL; } } - cxListDestroy(list); + cxListFree(list); // load threadpool config log_ereport(LOG_DEBUG, "apply config: Threadpool"); @@ -205,7 +205,7 @@ return NULL; } } - cxListDestroy(list); + cxListFree(list); // check thread pool config if(check_thread_pool_cfg() != 0) { /* critical error */ @@ -228,7 +228,7 @@ /* critical error */ return NULL; } - cxListDestroy(list); + cxListFree(list); // load Listener config log_ereport(LOG_DEBUG, "apply config: Listener"); @@ -239,7 +239,7 @@ return NULL; } } - cxListDestroy(list); + cxListFree(list); // we return here, to let the webserver use the runtime info to // change the uid if needed @@ -271,18 +271,18 @@ cx_foreach(ConfigNode *, logobj, iter) { if(!logobj) { // error - cxListDestroy(list); + cxListFree(list); return NULL; } int ret = cfg_handle_logfile(serverconfig, logobj); if(ret != 0) { // cannot initialize log file - cxListDestroy(list); + cxListFree(list); return NULL; } } - cxListDestroy(list); + cxListFree(list); log_ereport(LOG_DEBUG, "apply config: AccessLog"); list = serverconfig_get_node_list(serverconf->root, CONFIG_NODE_OBJECT, cx_str("AccessLog")); @@ -292,7 +292,7 @@ return NULL; } } - cxListDestroy(list); + cxListFree(list); log_ereport(LOG_DEBUG, "apply config: AuthDB"); list = serverconfig_get_node_list(serverconf->root, CONFIG_NODE_OBJECT, cx_str("AuthDB")); @@ -302,7 +302,7 @@ return NULL; } } - cxListDestroy(list); + cxListFree(list); log_ereport(LOG_DEBUG, "apply config: VirtualServer"); list = serverconfig_get_node_list(serverconf->root, CONFIG_NODE_OBJECT, cx_str("VirtualServer")); @@ -312,7 +312,7 @@ return NULL; } } - cxListDestroy(list); + cxListFree(list); log_ereport(LOG_DEBUG, "apply config: ResourcePool"); list = serverconfig_get_node_list(serverconf->root, CONFIG_NODE_OBJECT, cx_str("ResourcePool")); @@ -322,7 +322,7 @@ return NULL; } } - cxListDestroy(list); + cxListFree(list); log_ereport(LOG_DEBUG, "apply config: Dav"); list = serverconfig_get_node_list(serverconf->root, CONFIG_NODE_OBJECT, cx_str("Dav")); @@ -332,7 +332,7 @@ return NULL; } } - cxListDestroy(list); + cxListFree(list); // set VirtualServer for all listeners CxList *ls = serverconfig->listeners; @@ -342,7 +342,7 @@ // search for VirtualServer //int b = 0; - CxIterator map_iter = cxMapIteratorValues(serverconfig->host_vs); + CxMapIterator map_iter = cxMapIteratorValues(serverconfig->host_vs); cx_foreach(VirtualServer *, vs, map_iter) { if(!cx_strcmp(vsname, (cxstring){vs->name.ptr, vs->name.length})) { listener->default_vs.vs = vs; @@ -701,7 +701,7 @@ int ret = 0; HttpListener *listener = http_listener_create(&lc); if(listener) { - listener->default_vs.vs_name = cx_strdup_a(cfg->a, (cxstring){lc.vs.ptr, lc.vs.length}).ptr; + listener->default_vs.vs_name = cx_strdup_a(cfg->a, lc.vs).ptr; cxListAdd(cfg->listeners, listener); } else { ret = 1; @@ -792,12 +792,12 @@ cxListAdd(backends, node->args); } else { log_ereport(LOG_MISCONFIG, "DavBackend must have only one value"); - cxListDestroy(backends); + cxListFree(backends); return 1; } } else { log_ereport(LOG_MISCONFIG, "DavBackend must be a directive"); - cxListDestroy(backends); + cxListFree(backends); return 1; } } @@ -841,7 +841,7 @@ cxListAdd(repository->davBackends, davInit); } - cxListDestroy(backends); + cxListFree(backends); // initialize vfs cxstring vfs_class = serverconfig_object_directive_value(obj, cx_str("VFS")); @@ -906,7 +906,7 @@ cxListAdd(tokens, &op); } if(cxListAdd(tokens, &arg->value)) { - cxListDestroy(tokens); + cxListFree(tokens); return 1; // OOM } arg = arg->next; @@ -919,7 +919,7 @@ } // don't need the token list anymore - cxListDestroy(tokens); + cxListFree(tokens); return ret; }