From: Tom Tromey Date: Sat, 23 Sep 2017 21:54:36 +0000 (-0600) Subject: Remove the last cleanup from regcache.c X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6c3e20f177102519cf4f8b3c7e7e17996ed7cd7f;p=binutils-gdb.git Remove the last cleanup from regcache.c This removes the last cleanup from regcache.c by changing one function to use std::string. gdb/ChangeLog 2017-09-25 Tom Tromey * regcache.c (regcache::dump): Use string_printf. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 2fb2af1194c..0b9aea224d0 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,7 @@ +2017-09-25 Tom Tromey + + * regcache.c (regcache::dump): Use string_printf. + 2017-09-25 Tom Tromey * regcache.c (class regcache_invalidator): New. diff --git a/gdb/regcache.c b/gdb/regcache.c index 3dae6f726a4..96a494719fd 100644 --- a/gdb/regcache.c +++ b/gdb/regcache.c @@ -1350,7 +1350,6 @@ reg_flush_command (char *command, int from_tty) void regcache::dump (ui_file *file, enum regcache_dump_what what_to_dump) { - struct cleanup *cleanups = make_cleanup (null_cleanup, NULL); struct gdbarch *gdbarch = m_descr->gdbarch; int regnum; int footnote_nr = 0; @@ -1442,6 +1441,7 @@ regcache::dump (ui_file *file, enum regcache_dump_what what_to_dump) /* Type. */ { const char *t; + std::string name_holder; if (regnum < 0) t = "Type"; @@ -1452,13 +1452,11 @@ regcache::dump (ui_file *file, enum regcache_dump_what what_to_dump) t = TYPE_NAME (register_type (arch (), regnum)); if (t == NULL) { - char *n; - if (!footnote_register_type_name_null) footnote_register_type_name_null = ++footnote_nr; - n = xstrprintf ("*%d", footnote_register_type_name_null); - make_cleanup (xfree, n); - t = n; + name_holder = string_printf ("*%d", + footnote_register_type_name_null); + t = name_holder.c_str (); } /* Chop a leading builtin_type. */ if (startswith (t, blt)) @@ -1592,7 +1590,6 @@ regcache::dump (ui_file *file, enum regcache_dump_what what_to_dump) fprintf_unfiltered (file, "*%d: Register type's name NULL.\n", footnote_register_type_name_null); - do_cleanups (cleanups); } static void