* cli/cli-logging.c (handle_redirections): Make a cleanup.
authorTom Tromey <tromey@redhat.com>
Thu, 30 Oct 2008 20:35:31 +0000 (20:35 +0000)
committerTom Tromey <tromey@redhat.com>
Thu, 30 Oct 2008 20:35:31 +0000 (20:35 +0000)
* reggroups.c (maintenance_print_reggroups): Make a cleanup.
* regcache.c (regcache_print): Make a cleanup.
* maint.c (maintenance_print_architecture): Make a cleanup.
* dummy-frame.c (maintenance_print_dummy_frames): Make a cleanup.

gdb/ChangeLog
gdb/cli/cli-logging.c
gdb/dummy-frame.c
gdb/maint.c
gdb/regcache.c
gdb/reggroups.c

index 885f2760536c80d3f580381d6faba0844ba413ce..6bb1c9b288a50782379c6a0c7e29d75b2fa18859 100644 (file)
@@ -1,3 +1,11 @@
+2008-10-28  Tom Tromey  <tromey@redhat.com>
+
+       * cli/cli-logging.c (handle_redirections): Make a cleanup.
+       * reggroups.c (maintenance_print_reggroups): Make a cleanup.
+       * regcache.c (regcache_print): Make a cleanup.
+       * maint.c (maintenance_print_architecture): Make a cleanup.
+       * dummy-frame.c (maintenance_print_dummy_frames): Make a cleanup.
+
 2008-10-30  Tom Tromey  <tromey@redhat.com>
 
        * utils.c (make_cleanup_close): Use make_cleanup_dtor.
index 86f1bc0a75c51ef2e36507fb66c02284e0ea21ca..1e941b13d8ed4b0a33fe838e0e69f70497ab8175 100644 (file)
@@ -85,6 +85,7 @@ pop_output_files (void)
 static void
 handle_redirections (int from_tty)
 {
+  struct cleanup *cleanups;
   struct ui_file *output;
 
   if (saved_filename != NULL)
@@ -97,6 +98,7 @@ handle_redirections (int from_tty)
   output = gdb_fopen (logging_filename, logging_overwrite ? "w" : "a");
   if (output == NULL)
     perror_with_name (_("set logging"));
+  cleanups = make_cleanup_ui_file_delete (output);
 
   /* Redirects everything to gdb_stdout while this is running.  */
   if (!logging_redirect)
@@ -104,6 +106,8 @@ handle_redirections (int from_tty)
       output = tee_file_new (gdb_stdout, 0, output, 1);
       if (output == NULL)
        perror_with_name (_("set logging"));
+      discard_cleanups (cleanups);
+      cleanups = make_cleanup_ui_file_delete (output);
       if (from_tty)
        fprintf_unfiltered (gdb_stdout, "Copying output to %s.\n",
                            logging_filename);
@@ -112,6 +116,8 @@ handle_redirections (int from_tty)
     fprintf_unfiltered (gdb_stdout, "Redirecting output to %s.\n",
                        logging_filename);
 
+  discard_cleanups (cleanups);
+
   saved_filename = xstrdup (logging_filename);
   saved_output.out = gdb_stdout;
   saved_output.err = gdb_stderr;
index a27de2e28f76d96af9c9375d7c4186249dcacc32..9cc3da739158e5a7f3095e572d937e5fe9c18f47 100644 (file)
@@ -265,11 +265,13 @@ maintenance_print_dummy_frames (char *args, int from_tty)
     fprint_dummy_frames (gdb_stdout);
   else
     {
+      struct cleanup *cleanups;
       struct ui_file *file = gdb_fopen (args, "w");
       if (file == NULL)
        perror_with_name (_("maintenance print dummy-frames"));
+      cleanups = make_cleanup_ui_file_delete (file);
       fprint_dummy_frames (file);    
-      ui_file_delete (file);
+      do_cleanups (cleanups);
     }
 }
 
index e64d4feccf279d77d881c4112eeb320faef6d4fd..365e3744c4decad60d8cf939ebd2adfdadded3ab 100644 (file)
@@ -414,11 +414,13 @@ maintenance_print_architecture (char *args, int from_tty)
     gdbarch_dump (current_gdbarch, gdb_stdout);
   else
     {
+      struct cleanup *cleanups;
       struct ui_file *file = gdb_fopen (args, "w");
       if (file == NULL)
        perror_with_name (_("maintenance print architecture"));
+      cleanups = make_cleanup_ui_file_delete (file);
       gdbarch_dump (current_gdbarch, file);    
-      ui_file_delete (file);
+      do_cleanups (cleanups);
     }
 }
 
index 616a6f71817f786f745cdae148b340693b4674fa..74ca6f069ff1d21ab1e25f4dc94ffbb9b3c22074 100644 (file)
@@ -1104,11 +1104,13 @@ regcache_print (char *args, enum regcache_dump_what what_to_dump)
     regcache_dump (get_current_regcache (), gdb_stdout, what_to_dump);
   else
     {
+      struct cleanup *cleanups;
       struct ui_file *file = gdb_fopen (args, "w");
       if (file == NULL)
        perror_with_name (_("maintenance print architecture"));
+      cleanups = make_cleanup_ui_file_delete (file);
       regcache_dump (get_current_regcache (), file, what_to_dump);
-      ui_file_delete (file);
+      do_cleanups (cleanups);
     }
 }
 
index ea2451ed792b1f0b1b78c63ce7f1082e0d36fe34..a4e1d3178c87d07d948be6fe6b2f95be029a8c0e 100644 (file)
@@ -234,11 +234,13 @@ maintenance_print_reggroups (char *args, int from_tty)
     reggroups_dump (current_gdbarch, gdb_stdout);
   else
     {
+      struct cleanup *cleanups;
       struct ui_file *file = gdb_fopen (args, "w");
       if (file == NULL)
        perror_with_name (_("maintenance print reggroups"));
+      cleanups = make_cleanup_ui_file_delete (file);
       reggroups_dump (current_gdbarch, file);    
-      ui_file_delete (file);
+      do_cleanups (cleanups);
     }
 }
 
This page took 0.035721 seconds and 4 git commands to generate.