Comma is valid symbol in encoded non-ascii section names, so it
shouldn't be used as splitting symbol in section name.
const char *settings_section_escape(const char *name)
{
#define CHAR_NEED_ESCAPE(c) \
- ((c) == '=' || (c) == SETTINGS_SEPARATOR || (c) == '\\' || (c) == ' ')
+ ((c) == '=' || (c) == SETTINGS_SEPARATOR || (c) == '\\' || (c) == ' ' || (c) == ',')
string_t *str;
unsigned int i;
case ' ':
str_append(str, "\\_");
break;
+ case ',':
+ str_append(str, "\\+");
+ break;
default:
str_append_c(str, name[i]);
break;