src/server/config/serverconfig.c

changeset 464
0a29110b94ec
parent 459
f21b4ff81c01
child 490
d218607f5a7e
--- a/src/server/config/serverconfig.c	Sat Mar 11 13:57:30 2023 +0100
+++ b/src/server/config/serverconfig.c	Sat Mar 11 17:14:51 2023 +0100
@@ -227,8 +227,17 @@
 */
 
 static void config_arg_set_value(CxAllocator *a, ConfigParam *arg, CFGToken token) {
-    cxstring nv = cx_strchr(token.content, '=');
+    cxstring nv = (cxstring){NULL,0};
+    WSBool quotes = token.content.ptr[0] == '\"';
+    if(!quotes) {
+        nv = cx_strchr(token.content, '=');
+    }
     if(!nv.ptr) {
+        if(quotes) {
+            // remove quote
+            token.content.ptr++;
+            token.content.length -= 2;
+        }
         arg->value = cx_strdup_a(a, token.content);
     } else {
         intptr_t eq = (intptr_t)(nv.ptr - token.content.ptr);
@@ -292,7 +301,7 @@
     int text_start = 0;
     int err = 0;
     while((token = get_next_token(parser, content, &pos)).type != CFG_NO_TOKEN) {
-        //printf("%s [%.*s]\n", token_type_str(token.type), (int)token.content.length, token.content.ptr);
+        //printf("[%.*s]\n", (int)token.content.length, token.content.ptr); fflush(stdout);
 
         switch(token.type) {
             case CFG_NO_TOKEN: break;

mercurial