src/server/config/objconf.c

changeset 115
51d9a15eac98
parent 91
fac51f87def0
child 415
d938228c382e
equal deleted inserted replaced
114:c3a0f1275d71 115:51d9a15eac98
82 begin->type = cfg_get_line_type(line); 82 begin->type = cfg_get_line_type(line);
83 switch(begin->type) { 83 switch(begin->type) {
84 case LINE_BEGIN_TAG: { 84 case LINE_BEGIN_TAG: {
85 ConfigTag *tag = cfg_parse_begin_tag(line, conf->parser.mp); 85 ConfigTag *tag = cfg_parse_begin_tag(line, conf->parser.mp);
86 if(tag == NULL) { 86 if(tag == NULL) {
87 fprintf(stderr, "Parse error!\n"); 87 log_ereport(LOG_FAILURE, "Parse error in %s", conf->file);
88 exit(-1); // TODO: better error handling 88 exit(-1); // TODO: better error handling
89 } 89 }
90 tag->begin = begin; 90 tag->begin = begin;
91 tag->end = end; 91 tag->end = end;
92 tag->type_num = cfg_get_tag_type(tag->name); 92 tag->type_num = cfg_get_tag_type(tag->name);
190 // TODO 190 // TODO
191 191
192 break; 192 break;
193 } 193 }
194 default: { 194 default: {
195 printf("unknown tag\n"); 195 log_ereport(LOG_FAILURE, "objconf: unknown tag");
196 return 1; 196 return 1;
197 } 197 }
198 } 198 }
199 199
200 return 0; 200 return 0;
201 } 201 }
202 202
203 int objconf_on_end_tag(ObjectConfig *conf, sstr_t tagname) { 203 int objconf_on_end_tag(ObjectConfig *conf, sstr_t tagname) {
204 int type = cfg_get_tag_type(tagname); 204 int type = cfg_get_tag_type(tagname);
205 if(type == -1) { 205 if(type == -1) {
206 fprintf(stderr, "unknown tag\n"); 206 log_ereport(LOG_FAILURE, "objconf: unknown tag");
207 return 1; 207 return 1;
208 } else { 208 } else {
209 if(type == TAG_OBJECT) { 209 if(type == TAG_OBJECT) {
210 conf->obj = NULL; 210 conf->obj = NULL;
211 } 211 }

mercurial