src/server/plugins/postgresql/config.c

changeset 490
d218607f5a7e
parent 418
b7dcc9c4f270
--- a/src/server/plugins/postgresql/config.c	Sat Mar 25 17:18:51 2023 +0100
+++ b/src/server/plugins/postgresql/config.c	Fri May 05 18:02:11 2023 +0200
@@ -203,7 +203,7 @@
     }
     
     // prepare PgRepository
-    repo->prop_ext = cxHashMapCreate(a, 8);
+    repo->prop_ext = cxHashMapCreate(a, CX_STORE_POINTERS, 8);
     if(!repo->prop_ext) {
         log_ereport(LOG_FAILURE, "pg: cannot load config file: OOM");
         return 1;
@@ -245,8 +245,8 @@
     int ret = 0;
     
     PgExtParser parserData;
-    parserData.table_lookup = cxHashMapCreate(cxDefaultAllocator, 8);
-    parserData.tables = cxLinkedListCreate(cxDefaultAllocator, cx_cmp_ptr, sizeof(PgExtTable));
+    parserData.table_lookup = cxHashMapCreate(cxDefaultAllocator, CX_STORE_POINTERS, 8);
+    parserData.tables = cxLinkedListCreate(cxDefaultAllocator, NULL, sizeof(PgExtTable));
     
     while(node && !ret) {
         // currently, the only possible config element is <extension>
@@ -265,7 +265,7 @@
         repo->tables = pool_calloc(pool, ntables, sizeof(PgExtTable));
         if(repo->tables) {
             int i = 0;
-            CxIterator iter = cxListIterator(parserData.tables, 0);
+            CxIterator iter = cxListIterator(parserData.tables);
             cx_foreach(PgExtTable *, tab, iter) {
                 repo->tables[i++] = *tab;
             }
@@ -294,7 +294,7 @@
     xmlNode *node = ext_node->children;
     
     const char *table = NULL;
-    CxList *properties = cxPointerLinkedListCreate(a, cx_cmp_ptr);
+    CxList *properties = cxLinkedListCreate(a, NULL, CX_STORE_POINTERS);
     
     while(node) {
         if(node->type == XML_ELEMENT_NODE) {
@@ -364,7 +364,7 @@
         return 1;
     }
      
-    CxIterator iter = cxListIterator(properties, 0);
+    CxIterator iter = cxListIterator(properties);
     cx_foreach(xmlNode *, ps, iter) {
         const char *value = pg_util_xml_get_text(ps);
         
@@ -382,7 +382,7 @@
         
         CxHashKey key = webdav_property_key(ext_col->ns, ext_col->name);
         int err = cxMapPut(repo->prop_ext, key, ext_col);
-        free(key.data.bytes);
+        free((void*)key.data);
         if(err) {
             return 1;
         }

mercurial