X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=uip%2Fscansbr.c;h=48837d76033fa45a2ac45c0b4258d74c92f8a034;hp=feef5c0495be89910ff621cdf9b4651ec6aabf67;hb=6e9577f324bef90765a5edc02044eb111ec48072;hpb=04a3dfc70394a517a79340a7d3ecd9c6a23d0bee diff --git a/uip/scansbr.c b/uip/scansbr.c index feef5c0..48837d7 100644 --- a/uip/scansbr.c +++ b/uip/scansbr.c @@ -107,6 +107,9 @@ scan(FILE *inb, int innum, int outnum, char *fmtstr, int width, int curflg, for (compnum = 1, state = FLD2; ; ) { state = m_getfld2(state, &f, inb); switch (state) { + case LENERR2: + state = FLD2; + /* FALL */ case FLD2: compnum++; if (incing) { @@ -191,19 +194,20 @@ body:; } goto finished; - case LENERR2: - advise(NULL, "line \"%s\" too long", trim(f.value)); - goto handleerror; - case FMTERR2: if (strncmp("From ", f.value, 5)==0) { state = FILEEOF2; goto finished; } - /* FALL */ + state = FLD2; + fprintf(stderr, innum ? + "??Format error (message %d) in " : + "??Format error in ", + outnum ? outnum : innum); + fprintf(stderr, "component %d\n", compnum); + continue; case IOERR2: -handleerror:; fprintf(stderr, innum ? "??Format error (message %d) in " : "??Format error in ",