diff options
author | Mike Frysinger <vapier@gentoo.org> | 2014-02-20 00:28:17 -0500 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2014-03-10 22:57:29 -0400 |
commit | 60d847df0b9691b7cb38bfba41b9d6aafd97efc2 (patch) | |
tree | a2fa4e54d1c4bc8a82cdc5fbd65f5958875356cf /sim/m32c | |
parent | 61d1ce24e894c08a701efc5794012161ef101a60 (diff) | |
download | gdb-60d847df0b9691b7cb38bfba41b9d6aafd97efc2.zip gdb-60d847df0b9691b7cb38bfba41b9d6aafd97efc2.tar.gz gdb-60d847df0b9691b7cb38bfba41b9d6aafd97efc2.tar.bz2 |
sim: constify arg to sim_do_command
It is rare for people to want to modify the cmd arg. In general, they
really shouldn't be, but a few still do. For those who misbehave, dupe
the string locally so they can bang on it.
Diffstat (limited to 'sim/m32c')
-rw-r--r-- | sim/m32c/ChangeLog | 5 | ||||
-rw-r--r-- | sim/m32c/gdb-if.c | 10 |
2 files changed, 11 insertions, 4 deletions
diff --git a/sim/m32c/ChangeLog b/sim/m32c/ChangeLog index e202191..2abe643 100644 --- a/sim/m32c/ChangeLog +++ b/sim/m32c/ChangeLog @@ -1,3 +1,8 @@ +2014-03-10 Mike Frysinger <vapier@gentoo.org> + + * gdb-if.c (sim_do_command): Add const to cmd. Move args + to top and add const. Call strdup on cmd and free at end. + 2014-03-05 Mike Frysinger <vapier@gentoo.org> * gdb-if.c (sim_load): Add const to prog. diff --git a/sim/m32c/gdb-if.c b/sim/m32c/gdb-if.c index bec9d48..a617b7c 100644 --- a/sim/m32c/gdb-if.c +++ b/sim/m32c/gdb-if.c @@ -650,11 +650,12 @@ sim_stop_reason (SIM_DESC sd, enum sim_stop *reason_p, int *sigrc_p) } void -sim_do_command (SIM_DESC sd, char *cmd) +sim_do_command (SIM_DESC sd, const char *cmd) { - check_desc (sd); + const char *args; + char *p = strdup (cmd); - char *p = cmd; + check_desc (sd); /* Skip leading whitespace. */ while (isspace (*p)) @@ -667,7 +668,6 @@ sim_do_command (SIM_DESC sd, char *cmd) /* Null-terminate the command word, and record the start of any further arguments. */ - char *args; if (*p) { *p = '\0'; @@ -701,6 +701,8 @@ sim_do_command (SIM_DESC sd, char *cmd) else printf ("The 'sim' command expects either 'trace' or 'verbose'" " as a subcommand.\n"); + + free (p); } char ** |