PR libgfortran/42090
* io/transfer.c (skip_record): Set bytes_left_subrecord to zero after
skipping the remaining bytes in the record.
(next_record_r): Call skip_record with the number of bytes_left to be
skipped.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154316
138bc75d-0d04-0410-961f-
82ee72b054a4
+2009-11-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libgfortran/42090
+ * io/transfer.c (skip_record): Set bytes_left_subrecord to zero after
+ skipping the remaining bytes in the record.
+ (next_record_r): Call skip_record with the number of bytes_left to be
+ skipped.
+
2009-11-02 Janne Blomqvist <jb@gcc.gnu.org>
* Makefile.am (gfor_io_headers): Add fbuf.h, format.h, unix.h.
if (sseek (dtp->u.p.current_unit->s,
dtp->u.p.current_unit->bytes_left_subrecord, SEEK_CUR) < 0)
generate_error (&dtp->common, LIBERROR_OS, NULL);
+
+ dtp->u.p.current_unit->bytes_left_subrecord = 0;
}
else
{ /* Seek by reading data. */
case FORMATTED_DIRECT:
case UNFORMATTED_DIRECT:
- skip_record (dtp, 0);
+ skip_record (dtp, dtp->u.p.current_unit->bytes_left);
break;
case FORMATTED_STREAM: