diff options
-rw-r--r-- | gdb/ChangeLog | 4 | ||||
-rw-r--r-- | gdb/exec.c | 5 |
2 files changed, 9 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 327ce7b..e507dd1 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,7 @@ +2016-02-17 Gary Benson <gbenson@redhat.com> + + * exec.c (exec_file_locate_attach): Add missing cleanup. + 2016-02-16 Don Breazeal <donb@codesourcery.com> PR remote/19496 @@ -141,6 +141,7 @@ void exec_file_locate_attach (int pid, int from_tty) { char *exec_file, *full_exec_path = NULL; + struct cleanup *old_chain; /* Do nothing if we already have an executable filename. */ exec_file = (char *) get_exec_file (0); @@ -170,8 +171,12 @@ exec_file_locate_attach (int pid, int from_tty) full_exec_path = xstrdup (exec_file); } + old_chain = make_cleanup (xfree, full_exec_path); + exec_file_attach (full_exec_path, from_tty); symbol_file_add_main (full_exec_path, from_tty); + + do_cleanups (old_chain); } /* Set FILENAME as the new exec file. |