(mi_cmd_var_update): Fix memory leak.

This commit is contained in:
Nick Roberts 2006-12-08 04:09:53 +00:00
parent ba17f7aa4d
commit db9a518b07

View file

@ -500,10 +500,11 @@ mi_cmd_var_update (char *command, char **argv, int argc)
if ((*name == '*') && (*(name + 1) == '\0')) if ((*name == '*') && (*(name + 1) == '\0'))
{ {
nv = varobj_list (&rootlist); nv = varobj_list (&rootlist);
cleanup = make_cleanup (xfree, rootlist);
if (mi_version (uiout) <= 1) 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 else
cleanup = make_cleanup_ui_out_list_begin_end (uiout, "changelist"); make_cleanup_ui_out_list_begin_end (uiout, "changelist");
if (nv <= 0) if (nv <= 0)
{ {
do_cleanups (cleanup); do_cleanups (cleanup);
@ -515,7 +516,6 @@ mi_cmd_var_update (char *command, char **argv, int argc)
varobj_update_one (*cr, print_values); varobj_update_one (*cr, print_values);
cr++; cr++;
} }
xfree (rootlist);
do_cleanups (cleanup); do_cleanups (cleanup);
} }
else else