aboutsummaryrefslogtreecommitdiff
path: root/gdb/cli
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/cli')
-rw-r--r--gdb/cli/cli-setshow.c16
1 files changed, 4 insertions, 12 deletions
diff --git a/gdb/cli/cli-setshow.c b/gdb/cli/cli-setshow.c
index fb0bd49..c6e5ebc 100644
--- a/gdb/cli/cli-setshow.c
+++ b/gdb/cli/cli-setshow.c
@@ -367,24 +367,16 @@ do_set_command (const char *arg, int from_tty, struct cmd_list_element *c)
message. */
if (arg == NULL)
{
- char *msg;
- int msg_len = 0;
-
- for (i = 0; c->enums[i]; i++)
- msg_len += strlen (c->enums[i]) + 2;
-
- msg = (char *) xmalloc (msg_len);
- *msg = '\0';
- make_cleanup (xfree, msg);
+ std::string msg;
for (i = 0; c->enums[i]; i++)
{
if (i != 0)
- strcat (msg, ", ");
- strcat (msg, c->enums[i]);
+ msg += ", ";
+ msg += c->enums[i];
}
error (_("Requires an argument. Valid arguments are %s."),
- msg);
+ msg.c_str ());
}
p = strchr (arg, ' ');