Replace some uses of xstrprintf with string_printf
This patch replaces some simple uses of xstrprintf with with string_printf, removing the need to do manual memory freeing. The change in ada-lang.c fixes an apparent memory leak. Regtested on the buildbot. gdb/ChangeLog: * common/filestuff.h (gdb_fopen_cloexec): New overload. (gdb_open_cloexec): Likewise. * nat/linux-osdata.c (command_from_pid): Use string_printf. (commandline_from_pid): Likewise. (linux_xfer_osdata_threads): Likewise. (linux_xfer_osdata_fds): Likewise. * ada-lang.c (is_package_name): Likewise. * auxv.c (procfs_xfer_auxv): Likewise. * breakpoint.c (print_one_breakpoint_location): Use uiout::field_fmt. (print_one_catch_solib): Use string_printf. * coff-pe-read.c (add_pe_exported_sym): Likewise. (add_pe_forwarded_sym): Likewise. * dwarf2read.c (create_type_unit_group): Likewise. (build_error_marker_type): Likewise. * infcall.c (get_function_name): Likewise. * valprint.c (print_converted_chars_to_obstack): Likewise. * xtensa-tdep.c (xtensa_register_type): Likewise.
This commit is contained in:
parent
96d68bd48c
commit
528e15722b
11 changed files with 99 additions and 83 deletions
|
@ -385,13 +385,11 @@ get_function_name (CORE_ADDR funaddr, char *buf, int buf_size)
|
|||
}
|
||||
|
||||
{
|
||||
char *tmp = xstrprintf (_(RAW_FUNCTION_ADDRESS_FORMAT),
|
||||
hex_string (funaddr));
|
||||
std::string tmp = string_printf (_(RAW_FUNCTION_ADDRESS_FORMAT),
|
||||
hex_string (funaddr));
|
||||
|
||||
gdb_assert (strlen (tmp) + 1 <= buf_size);
|
||||
strcpy (buf, tmp);
|
||||
xfree (tmp);
|
||||
return buf;
|
||||
gdb_assert (tmp.length () + 1 <= buf_size);
|
||||
return strcpy (buf, tmp.c_str ());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue