simplify cli-logging.c for analysis
authorTom Tromey <tromey@redhat.com>
Thu, 30 May 2013 17:13:19 +0000 (17:13 +0000)
committerTom Tromey <tromey@redhat.com>
Thu, 30 May 2013 17:13:19 +0000 (17:13 +0000)
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.

gdb/ChangeLog
gdb/cli/cli-logging.c

index b8e5f99..5b9e8dd 100644 (file)
@@ -1,5 +1,10 @@
 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
        return paths.
 
index 9f1477d..5704179 100644 (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