From: Jerry DeLisle Date: Tue, 6 May 2008 04:00:38 +0000 (+0000) Subject: re PR libfortran/36131 (wrong IO) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=d0d51277e27bdccd8fa3916b8a69c1afc1685645;p=gcc.git re PR libfortran/36131 (wrong IO) 2008-05-05 Jerry DeLisle PR libfortran/36131 * io/transfer.c (formatted_transfer_scalar): Revert patch for PR34974. (next_record_w): Likewise. From-SVN: r134973 --- diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index 9da45d503c5..26ad0395b64 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,9 @@ +2008-05-05 Jerry DeLisle + + PR libfortran/36131 + * io/transfer.c (formatted_transfer_scalar): Revert patch for PR34974. + (next_record_w): Likewise. + 2008-05-04 Thomas Koenig PR libfortran/35995 diff --git a/libgfortran/io/transfer.c b/libgfortran/io/transfer.c index 8741758e61d..7071ab9128a 100644 --- a/libgfortran/io/transfer.c +++ b/libgfortran/io/transfer.c @@ -1303,11 +1303,6 @@ formatted_transfer_scalar (st_parameter_dt *dtp, bt type, void *p, int len, else read_x (dtp, dtp->u.p.skips); } - else - { - if (dtp->u.p.skips < 0) - flush (dtp->u.p.current_unit->s); - } break; @@ -2682,8 +2677,7 @@ next_record_w (st_parameter_dt *dtp, int done) if (max_pos > m) { length = (int) (max_pos - m); - sseek (dtp->u.p.current_unit->s, - file_position (dtp->u.p.current_unit->s) + length); + p = salloc_w (dtp->u.p.current_unit->s, &length); } #ifdef HAVE_CRLF len = 2;