aboutsummaryrefslogtreecommitdiff
path: root/libgfortran
diff options
context:
space:
mode:
authorJanne Blomqvist <jb@gcc.gnu.org>2009-04-18 13:05:34 +0300
committerJanne Blomqvist <jb@gcc.gnu.org>2009-04-18 13:05:34 +0300
commit0a629857bcb96127913375be6cc48805e26d0c94 (patch)
treea9d7e79c0d86c6e75dac0590684b5c22d161fe36 /libgfortran
parent8dd07c4158f8e6691d87917aeceddb43bf53df4c (diff)
downloadgcc-0a629857bcb96127913375be6cc48805e26d0c94.zip
gcc-0a629857bcb96127913375be6cc48805e26d0c94.tar.gz
gcc-0a629857bcb96127913375be6cc48805e26d0c94.tar.bz2
re PR fortran/39782 (IO depends on uninitialised value)
2009-04-18 Janne Blomqvist <jb@gcc.gnu.org> PR libfortran/39782 * io/transfer.c (data_transfer_init): Don't flush before seek. (finalize_transfer): Remove extra flush. From-SVN: r146308
Diffstat (limited to 'libgfortran')
-rw-r--r--libgfortran/ChangeLog6
-rw-r--r--libgfortran/io/transfer.c6
2 files changed, 6 insertions, 6 deletions
diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog
index 20a0719..6763ad1 100644
--- a/libgfortran/ChangeLog
+++ b/libgfortran/ChangeLog
@@ -1,3 +1,9 @@
+2009-04-18 Janne Blomqvist <jb@gcc.gnu.org>
+
+ PR libfortran/39782
+ * io/transfer.c (data_transfer_init): Don't flush before seek.
+ (finalize_transfer): Remove extra flush.
+
2009-04-17 Janne Blomqvist <jb@gcc.gnu.org>
* io/io.h (is_preconnected): Remove prototype.
diff --git a/libgfortran/io/transfer.c b/libgfortran/io/transfer.c
index 94454a6..27ae899 100644
--- a/libgfortran/io/transfer.c
+++ b/libgfortran/io/transfer.c
@@ -2332,7 +2332,6 @@ data_transfer_init (st_parameter_dt *dtp, int read_flag)
if (dtp->pos != dtp->u.p.current_unit->strm_pos)
{
fbuf_flush (dtp->u.p.current_unit, dtp->u.p.mode);
- sflush (dtp->u.p.current_unit->s);
if (sseek (dtp->u.p.current_unit->s, dtp->pos - 1, SEEK_SET) < 0)
{
generate_error (&dtp->common, LIBERROR_OS, NULL);
@@ -3143,11 +3142,6 @@ finalize_transfer (st_parameter_dt *dtp)
&& dtp->u.p.advance_status != ADVANCE_NO)
next_record (dtp, 1);
- if (dtp->u.p.current_unit->flags.form == FORM_UNFORMATTED
- && stell (dtp->u.p.current_unit->s) >= dtp->rec)
- {
- sflush (dtp->u.p.current_unit->s);
- }
return;
}