From: Tom Tromey Date: Thu, 30 May 2013 17:13:19 +0000 (+0000) Subject: simplify cli-logging.c for analysis X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=e12fefc804bcbe2d53554390b76f07005632a526;p=binutils-gdb.git simplify cli-logging.c for analysis This is another stylistic patch. It changes cli-logging.c to be analyzable by the checker, again following the method of adding an outer cleanup and unconditionally calling do_cleanups. * cli/cli-logging.c (set_logging_redirect): Unconditionally call do_cleanups. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index b8e5f991527..5b9e8ddfc9e 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2013-05-30 Tom Tromey + + * cli/cli-logging.c (set_logging_redirect): Unconditionally + call do_cleanups. + 2013-05-30 Tom Tromey * varobj.c (c_value_of_root): Call do_cleanups along all diff --git a/gdb/cli/cli-logging.c b/gdb/cli/cli-logging.c index 9f1477dc982..57041799bbb 100644 --- a/gdb/cli/cli-logging.c +++ b/gdb/cli/cli-logging.c @@ -79,7 +79,7 @@ static struct ui_file *logging_no_redirect_file; static void set_logging_redirect (char *args, int from_tty, struct cmd_list_element *c) { - struct cleanup *cleanups = NULL; + struct cleanup *cleanups; struct ui_file *output, *new_logging_no_redirect_file; struct ui_out *uiout = current_uiout; @@ -88,13 +88,15 @@ set_logging_redirect (char *args, int from_tty, struct cmd_list_element *c) || (logging_redirect == 0 && logging_no_redirect_file != NULL)) return; + cleanups = make_cleanup (null_cleanup, NULL); + if (logging_redirect != 0) { gdb_assert (logging_no_redirect_file != NULL); /* ui_out_redirect still has not been called for next gdb_stdout. */ - cleanups = make_cleanup_ui_file_delete (gdb_stdout); + make_cleanup_ui_file_delete (gdb_stdout); output = logging_no_redirect_file; new_logging_no_redirect_file = NULL; @@ -139,8 +141,7 @@ set_logging_redirect (char *args, int from_tty, struct cmd_list_element *c) || ui_out_redirect (uiout, output) < 0) warning (_("Current output protocol does not support redirection")); - if (logging_redirect != 0) - do_cleanups (cleanups); + do_cleanups (cleanups); } static void