diff options
author | (no author) <(no author)@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-10-21 21:49:38 +0000 |
---|---|---|
committer | (no author) <(no author)@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-10-21 21:49:38 +0000 |
commit | d1f09cc8803aae37febfcf0462dc562debd01829 (patch) | |
tree | b0fd40a57cb8c8f081db703d3b7fc81aa9fd1b91 /libgfortran/io | |
parent | b88baab8dc533a28fc64d5addedc490222540398 (diff) |
This commit was manufactured by cvs2svn to create tagimmuse-rewrite-beta
'immuse-rewrite-beta'.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/tags/immuse-rewrite-beta@89407 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libgfortran/io')
-rw-r--r-- | libgfortran/io/transfer.c | 7 | ||||
-rw-r--r-- | libgfortran/io/unix.c | 1 |
2 files changed, 7 insertions, 1 deletions
diff --git a/libgfortran/io/transfer.c b/libgfortran/io/transfer.c index ca920724b0d..ceff76fc35c 100644 --- a/libgfortran/io/transfer.c +++ b/libgfortran/io/transfer.c @@ -1074,6 +1074,7 @@ data_transfer_init (int read_flag) g.seen_dollar = 0; g.first_item = 1; g.item_count = 0; + sf_seen_eor = 0; pre_position (); @@ -1348,7 +1349,8 @@ next_record (int done) /* Finalize the current data transfer. For a nonadvancing transfer, - this means advancing to the next record. */ + this means advancing to the next record. For internal units close the + steam associated with the unit. */ static void finalize_transfer (void) @@ -1391,6 +1393,9 @@ finalize_transfer (void) } sfree (current_unit->s); + + if (is_internal_unit ()) + sclose (current_unit->s); } diff --git a/libgfortran/io/unix.c b/libgfortran/io/unix.c index e55966b2f2a..c8b18fc96fc 100644 --- a/libgfortran/io/unix.c +++ b/libgfortran/io/unix.c @@ -811,6 +811,7 @@ mem_truncate (unix_stream * s) static try mem_close (unix_stream * s) { + free_mem (s); return SUCCESS; } |