Commit 8215fbe9 authored by bell@sanja.is.com.ua's avatar bell@sanja.is.com.ua

fixed config parser to recognize correctly strings like following:

test="\"#no comment here"#real comment
parent f657ea97
...@@ -449,11 +449,12 @@ static int search_default_file(DYNAMIC_ARRAY *args, MEM_ROOT *alloc, ...@@ -449,11 +449,12 @@ static int search_default_file(DYNAMIC_ARRAY *args, MEM_ROOT *alloc,
static char *remove_end_comment(char *ptr) static char *remove_end_comment(char *ptr)
{ {
char quote= 0; char quote= 0; /* we are inside quote marks */
char escape= 0; /* symbol is protected by escape chagacter */
for (; *ptr; ptr++) for (; *ptr; ptr++)
{ {
if (*ptr == '\'' || *ptr == '\"') if ((*ptr == '\'' || *ptr == '\"') && !escape)
{ {
if (!quote) if (!quote)
quote= *ptr; quote= *ptr;
...@@ -465,6 +466,7 @@ static char *remove_end_comment(char *ptr) ...@@ -465,6 +466,7 @@ static char *remove_end_comment(char *ptr)
*ptr= 0; *ptr= 0;
return ptr; return ptr;
} }
escape= (quote && *ptr == '\\' && !escape);
} }
return ptr; return ptr;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment