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.
This commit is contained in:
Tom Tromey 2013-05-30 17:13:19 +00:00
parent 4867f990df
commit e12fefc804
2 changed files with 10 additions and 4 deletions

View File

@ -1,3 +1,8 @@
2013-05-30 Tom Tromey <tromey@redhat.com>
* cli/cli-logging.c (set_logging_redirect): Unconditionally
call do_cleanups.
2013-05-30 Tom Tromey <tromey@redhat.com>
* varobj.c (c_value_of_root): Call do_cleanups along all

View File

@ -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