aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog4
-rw-r--r--gdb/corefile.c5
2 files changed, 9 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index b5a31dd..36f5670 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,7 @@
+2008-04-30 Daniel Jacobowitz <dan@codesourcery.com>
+
+ * corefile.c (reopen_exec_file): Close any open files.
+
2008-04-29 Joel Brobecker <brobecker@adacore.com>
* ia64-tdep.c (ia64_memory_remove_breakpoint): Set
diff --git a/gdb/corefile.c b/gdb/corefile.c
index b1dbc6b..1da2b2a 100644
--- a/gdb/corefile.c
+++ b/gdb/corefile.c
@@ -164,6 +164,11 @@ reopen_exec_file (void)
if (exec_bfd_mtime && exec_bfd_mtime != st.st_mtime)
exec_file_attach (filename, 0);
+ else
+ /* If we accessed the file since last opening it, close it now;
+ this stops GDB from holding the executable open after it
+ exits. */
+ bfd_cache_close_all ();
#endif
}