src/server/config/conf.c

changeset 83
28433f06d5ee
parent 79
f48cea237ec3
child 91
fac51f87def0
equal deleted inserted replaced
82:740cfd9dd443 83:28433f06d5ee
507 // parse parameters 507 // parse parameters
508 sstr_t param_str; 508 sstr_t param_str;
509 param_str.ptr = line.ptr + i; 509 param_str.ptr = line.ptr + i;
510 param_str.length = line.length - name.length - 2; 510 param_str.length = line.length - name.length - 2;
511 param_str = sstrtrim(param_str); 511 param_str = sstrtrim(param_str);
512 if(param_str.length <= 0) { 512 if(param_str.length == 0) {
513 return tag; // no parameters 513 return tag; // no parameters
514 } 514 }
515 tag->param_str = sstrdup_mp(mp, param_str);
515 516
516 sstr_t pname; 517 sstr_t pname;
517 sstr_t pvalue; 518 sstr_t pvalue;
518 for(;;) { 519 for(;;) {
519 param_str = cfg_param(param_str, &pname, &pvalue); 520 param_str = cfg_param(param_str, &pname, &pvalue);
520 if(pname.length <= 0) { 521 if(pname.length == 0) {
521 break; 522 break;
522 } 523 }
523 524
524 // create param object 525 // create param object
525 ConfigParam *param = OBJ_NEW(mp, ConfigParam); 526 ConfigParam *param = OBJ_NEW(mp, ConfigParam);
530 param->value.ptr = NULL; 531 param->value.ptr = NULL;
531 param->value.length = 0; 532 param->value.length = 0;
532 } 533 }
533 534
534 // add param to list 535 // add param to list
535 if(tag->param) { 536 tag->param = cfg_list_append(mp, tag->param, param);
536 tag->param = ucx_list_append(tag->param, param);
537 } else {
538 tag->param = ucx_list_append(tag->param, param);
539 cfg_list_destr(mp, tag->param);
540 }
541 } 537 }
542 538
543 return tag; 539 return tag;
544 } 540 }
545 541

mercurial