From 573cbcb9c677e34ef28f21fd4b43072cf0e38640 Mon Sep 17 00:00:00 2001 From: Jerry DeLisle Date: Tue, 23 Jun 2009 00:16:24 +0000 Subject: [PATCH] re PR fortran/40508 (memory leak in internal write of gfortran) 2009-06-22 Jerry DeLisle PR libfortran/40508 * io/format.c: Don't save parsed format data for internal units. From-SVN: r148823 --- libgfortran/ChangeLog | 11 +++++++++++ libgfortran/io/format.c | 5 ++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index 4b4a3535d26..0ae5636c108 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,14 @@ +2009-06-xx Jerry DeLisle + + PR libfortran/32784 + * io/unix.c (open_external): Translate CONIN$, CONOUT$, and CONERR$ to + stdin, stdout, and stderr for ming32 or cygwin systems. + +2009-06-21 Jerry DeLisle + + PR libfortran/40508 + * io/format.c: Don't save parsed format data for internal units. + 2009-06-21 Thomas Koenig PR fortran/37577 diff --git a/libgfortran/io/format.c b/libgfortran/io/format.c index 2c116d6fed4..401cd827d9c 100644 --- a/libgfortran/io/format.c +++ b/libgfortran/io/format.c @@ -1218,7 +1218,10 @@ parse_format (st_parameter_dt *dtp) free_format_hash_table (dtp->u.p.current_unit); return; } - save_parsed_format (dtp); + + /* TODO: Interim fix for PR40508. Revise this for PR40330. */ + if (!is_internal_unit(dtp)) + save_parsed_format (dtp); }