diff options
-rw-r--r-- | libgfortran/ChangeLog | 6 | ||||
-rw-r--r-- | libgfortran/io/transfer.c | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index f46b469..1d57faa 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,9 @@ +2005-12-18 Jerry DeLisle <jvdelisle@gcc.gnu.org> + + PR libgfortran/25463 + * io/transfer.c (finalize_transfer): Fix execution order so that + next_record is set to zero in all cases. + 2005-12-16 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR libgfortran/25264 diff --git a/libgfortran/io/transfer.c b/libgfortran/io/transfer.c index 7696643..7ad1fffc 100644 --- a/libgfortran/io/transfer.c +++ b/libgfortran/io/transfer.c @@ -2017,6 +2017,7 @@ finalize_transfer (st_parameter_dt *dtp) finish_list_read (dtp); else { + dtp->u.p.current_unit->current_record = 0; if (dtp->u.p.advance_status == ADVANCE_NO || dtp->u.p.seen_dollar) { /* Most systems buffer lines, so force the partial record @@ -2027,7 +2028,6 @@ finalize_transfer (st_parameter_dt *dtp) } next_record (dtp, 1); - dtp->u.p.current_unit->current_record = 0; } sfree (dtp->u.p.current_unit->s); |