X-Git-Url: http://git.marmaro.de/?a=blobdiff_plain;ds=sidebyside;f=sbr%2Ffmt_new.c;h=6dcc70b3535b79e1e26950fb23c4937355d76ffc;hb=d4c34b4439a9dbd89664de460ed37ecddc260fb1;hp=8ddd3c166c3908a31bbd51e88b7a65930cfd741a;hpb=cf1205b5cbea2f0cd6ea710ec16c637df85b647c;p=mmh diff --git a/sbr/fmt_new.c b/sbr/fmt_new.c index 8ddd3c1..6dcc70b 100644 --- a/sbr/fmt_new.c +++ b/sbr/fmt_new.c @@ -27,10 +27,10 @@ char * new_fs(char *form, char *def_form) { struct stat st; - register FILE *fp; + FILE *fp; if (formats) { - free(formats); + mh_free0(&formats); } if (form) { @@ -43,7 +43,7 @@ new_fs(char *form, char *def_form) if (fstat(fileno(fp), &st) == -1) { adios(EX_IOERR, form, "unable to stat format file"); } - formats = mh_xmalloc((size_t) st.st_size + 1); + formats = mh_xcalloc(st.st_size + 1, sizeof(char)); if (read(fileno(fp), formats, (int)st.st_size) != st.st_size) { adios(EX_IOERR, form, "error reading format file"); } @@ -60,7 +60,7 @@ new_fs(char *form, char *def_form) if (fstat(fileno(fp), &st) == -1) { adios(EX_IOERR, def_form, "unable to stat format file"); } - formats = mh_xmalloc((size_t) st.st_size + 1); + formats = mh_xcalloc(st.st_size + 1, sizeof(char)); if (read(fileno(fp), formats, (int)st.st_size) != st.st_size) { adios(EX_IOERR, def_form, "error reading format file"); }