mirror of
https://github.com/bminor/binutils-gdb.git
synced 2025-12-26 01:07:52 +00:00
gdb: Use string_printf to format int fields instead of a fixed size buffer
This patch removes a FIXME comment from cli-out.c, now instead of formatting integers into a fixed size buffer we build a std::string and extract the formatted integer from that. The old code using a fixed size buffer was probably fine (the integer was not going to overflow it) and probably slightly more efficient (avoids building a std::string) however, given we already have utility code in GDB that will allow the 'FIXME' comment to be removed, it seems like an easy improvement. gdb/ChangeLog: * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather than a fixed size buffer.
This commit is contained in:
@@ -94,14 +94,12 @@ void
|
||||
cli_ui_out::do_field_int (int fldno, int width, ui_align alignment,
|
||||
const char *fldname, int value)
|
||||
{
|
||||
char buffer[20]; /* FIXME: how many chars long a %d can become? */
|
||||
|
||||
if (m_suppress_output)
|
||||
return;
|
||||
|
||||
xsnprintf (buffer, sizeof (buffer), "%d", value);
|
||||
std::string str = string_printf ("%d", value);
|
||||
|
||||
do_field_string (fldno, width, alignment, fldname, buffer);
|
||||
do_field_string (fldno, width, alignment, fldname, str.c_str ());
|
||||
}
|
||||
|
||||
/* used to omit a field */
|
||||
|
||||
Reference in New Issue
Block a user