diff -r 740cfd9dd443 -r 28433f06d5ee src/server/config/conf.c --- a/src/server/config/conf.c Sun Jun 30 15:11:48 2013 +0200 +++ b/src/server/config/conf.c Mon Jul 01 18:05:13 2013 +0200 @@ -509,15 +509,16 @@ param_str.ptr = line.ptr + i; param_str.length = line.length - name.length - 2; param_str = sstrtrim(param_str); - if(param_str.length <= 0) { + if(param_str.length == 0) { return tag; // no parameters } + tag->param_str = sstrdup_mp(mp, param_str); sstr_t pname; sstr_t pvalue; for(;;) { param_str = cfg_param(param_str, &pname, &pvalue); - if(pname.length <= 0) { + if(pname.length == 0) { break; } @@ -532,12 +533,7 @@ } // add param to list - if(tag->param) { - tag->param = ucx_list_append(tag->param, param); - } else { - tag->param = ucx_list_append(tag->param, param); - cfg_list_destr(mp, tag->param); - } + tag->param = cfg_list_append(mp, tag->param, param); } return tag;