X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=uip%2Fwhom.c;h=7486dd897f0dbb3315efbf6edd084724681d18b5;hp=a72c84f0977d88ad413c2d103018482a5676ba00;hb=e917512db8efcbf3b5b5baeb64b6d345fd3686db;hpb=cdb32d069bdcb6fa04ca7e3d87240442665611b0 diff --git a/uip/whom.c b/uip/whom.c index a72c84f..7486dd8 100644 --- a/uip/whom.c +++ b/uip/whom.c @@ -167,7 +167,7 @@ main(int argc, char **argv) } pclose(in); } - free(cmd); + mh_free0(&cmd); naddrs += n; cmd = add("ali -list", NULL); @@ -180,7 +180,7 @@ main(int argc, char **argv) } pclose(in); } - free(cmd); + mh_free0(&cmd); naddrs += n; cmd = add("ali -list", NULL); @@ -193,7 +193,7 @@ main(int argc, char **argv) } pclose(in); } - free(cmd); + mh_free0(&cmd); naddrs += n; return naddrs ? 0 : 1; @@ -215,6 +215,9 @@ process(char *file) for (compnum=1, state=FLD2;; compnum++) { switch (state = m_getfld2(state, &f, in)) { + case LENERR2: + state = FLD2; + /* FALL */ case FLD2: proc_hdr(f.name, f.value); continue; @@ -223,8 +226,10 @@ process(char *file) case FILEEOF2: break; - case LENERR2: case FMTERR2: + advise(NULL, "message format error in component #%d", compnum); + continue; + case IOERR2: adios(EX_DATAERR, NULL, "message format error in component #%d", compnum);