X-Git-Url: http://git.marmaro.de/?a=blobdiff_plain;ds=sidebyside;f=sbr%2Freadconfig.c;h=ec97e1e2f0e864f94358d867046be50db1fc57e8;hb=d4c34b4439a9dbd89664de460ed37ecddc260fb1;hp=cbeb4811f7f80e69778ad804381827736eed5c9a;hpb=5ba9c2f13fedf1d8d6ed907ef1f505616290efaa;p=mmh diff --git a/sbr/readconfig.c b/sbr/readconfig.c index cbeb481..ec97e1e 100644 --- a/sbr/readconfig.c +++ b/sbr/readconfig.c @@ -52,8 +52,7 @@ readconfig(struct node **npp, FILE *ib, char *file, int ctx) ib)) { case FLD: case FLDPLUS: - case FLDEOF: - np = (struct node *) mh_xmalloc(sizeof(*np)); + np = mh_xcalloc(1, sizeof(*np)); *npp = np; *(npp = &np->n_next) = NULL; np->n_name = getcpy(name); @@ -65,7 +64,7 @@ readconfig(struct node **npp, FILE *ib, char *file, int ctx) cp = add(field, cp); } np->n_field = trimcpy(cp); - free(cp); + mh_free0(&cp); } else { np->n_field = trimcpy(field); } @@ -81,12 +80,9 @@ readconfig(struct node **npp, FILE *ib, char *file, int ctx) *ps->procnaddr = np->n_field; break; } - if (state == FLDEOF) - break; continue; case BODY: - case BODYEOF: adios(EX_CONFIG, NULL, "no blank lines are permitted in %s", file);