------- Additional Comments From Thomas dot Koenig at online dot de 2005-01-31 17:02 ------- This looks promising.
I'll do a full check later. Thomas --- transfer.c.orig 2005-01-31 18:03:12.000000000 +0100 +++ transfer.c 2005-01-31 18:04:00.000000000 +0100 @@ -150,6 +150,14 @@ else p = base = data; + /* If we have seen the end of the record already, we just + * return blanks. + */ + if (sf_seen_eor) { + memset(base,' ',*length); + return base; + } + memset(base,'\0',*length); current_unit->bytes_left = options.default_recl; @@ -1222,8 +1230,11 @@ case FORMATTED_SEQUENTIAL: length = 1; /* sf_read has already terminated input because of an '\n' */ - if (sf_seen_eor) - break; + if (sf_seen_eor) + { + sf_seen_eor = 0; + break; + } do { -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19568