src/server/webdav/webdav.c

changeset 481
31affbf33911
parent 478
4dccc47c282e
child 487
f2b0e48aa483
--- a/src/server/webdav/webdav.c	Sat Mar 18 15:52:35 2023 +0100
+++ b/src/server/webdav/webdav.c	Sat Mar 18 19:33:06 2023 +0100
@@ -940,15 +940,24 @@
 
 /* ------------------------------ Utils ------------------------------ */
 
-CxHashKey webdav_property_key(const char *ns, const char *name) {
+CxHashKey webdav_property_key_a(CxAllocator *a, const char *ns, const char *name) {
     CxHashKey key;
     cxmutstr data = cx_asprintf("%s\n%s", name, ns);
-    key.data.str = data.ptr;
-    key.len = data.length;
-    cx_hash_murmur(&key);
+    if(data.ptr) {
+        key.data.str = data.ptr;
+        key.len = data.length;
+        cx_hash_murmur(&key);
+    } else {
+        key.data.str = NULL;
+        key.len = 0;
+        key.hash = 0;
+    }
     return key;
 }
 
+CxHashKey webdav_property_key(const char *ns, const char *name) {
+    return webdav_property_key_a(cxDefaultAllocator, ns, name);
+}
 
 /* ------------------------------ public API ------------------------------ */
 

mercurial