From: Nick Roberts Date: Fri, 8 Dec 2006 04:09:53 +0000 (+0000) Subject: (mi_cmd_var_update): Fix memory leak. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=db9a518b07b656e17230459a945301822ea13404;p=binutils-gdb.git (mi_cmd_var_update): Fix memory leak. --- diff --git a/gdb/mi/mi-cmd-var.c b/gdb/mi/mi-cmd-var.c index 0b131d91123..8bd8a6368a3 100644 --- a/gdb/mi/mi-cmd-var.c +++ b/gdb/mi/mi-cmd-var.c @@ -500,10 +500,11 @@ mi_cmd_var_update (char *command, char **argv, int argc) if ((*name == '*') && (*(name + 1) == '\0')) { nv = varobj_list (&rootlist); + cleanup = make_cleanup (xfree, rootlist); if (mi_version (uiout) <= 1) - cleanup = make_cleanup_ui_out_tuple_begin_end (uiout, "changelist"); + make_cleanup_ui_out_tuple_begin_end (uiout, "changelist"); else - cleanup = make_cleanup_ui_out_list_begin_end (uiout, "changelist"); + make_cleanup_ui_out_list_begin_end (uiout, "changelist"); if (nv <= 0) { do_cleanups (cleanup); @@ -515,7 +516,6 @@ mi_cmd_var_update (char *command, char **argv, int argc) varobj_update_one (*cr, print_values); cr++; } - xfree (rootlist); do_cleanups (cleanup); } else