aboutsummaryrefslogtreecommitdiff
path: root/gdb/value.c
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2017-10-12 08:27:21 -0600
committerTom Tromey <tom@tromey.com>2017-11-07 13:59:09 -0700
commit85c4be7c83b80acf647e6ffcaed0f0cdbcb8c3eb (patch)
treee5beb6ee1907869e987937ee92538274d0fa560d /gdb/value.c
parent022643b4456ee13752b0f3a8411238ab8c53bf6d (diff)
downloadgdb-85c4be7c83b80acf647e6ffcaed0f0cdbcb8c3eb.zip
gdb-85c4be7c83b80acf647e6ffcaed0f0cdbcb8c3eb.tar.gz
gdb-85c4be7c83b80acf647e6ffcaed0f0cdbcb8c3eb.tar.bz2
Add set_repeat_arguments function
The "x", "list", and "show commands" commands have special repetition behavior: repeating the command doesn't re-run it with the same arguments This is currently implemented by modifying the passed-in argument; but that won't work properly with const arguments (and seems pretty obscure besides). This patch adds a new "set_repeat_arguments" function and changes the relevant places to call it. gdb/ChangeLog 2017-11-07 Tom Tromey <tom@tromey.com> * printcmd.c (x_command): Call set_repeat_arguments. * cli/cli-cmds.c (list_command): Call set_repeat_arguments. * top.c (repeat_arguments): New global. (set_repeat_arguments): New function. (execute_command): Handle repeat_arguments. (show_commands): Calls set_repeat_arguments. * command.h (set_repeat_arguments): Declare.
Diffstat (limited to 'gdb/value.c')
-rw-r--r--gdb/value.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/gdb/value.c b/gdb/value.c
index 8fd391e..ade5ebd 100644
--- a/gdb/value.c
+++ b/gdb/value.c
@@ -2003,10 +2003,7 @@ show_values (char *num_exp, int from_tty)
"show values +". If num_exp is null, this is unnecessary, since
"show values +" is not useful after "show values". */
if (from_tty && num_exp)
- {
- num_exp[0] = '+';
- num_exp[1] = '\0';
- }
+ set_repeat_arguments ("+");
}
enum internalvar_kind