diff options
author | Pedro Alves <palves@redhat.com> | 2019-06-13 00:06:52 +0100 |
---|---|---|
committer | Pedro Alves <palves@redhat.com> | 2019-06-13 00:09:11 +0100 |
commit | 93bcb04349eb500781747a542ececc7a8ba3bd95 (patch) | |
tree | 3fe2fc17f6650811e6c426c316bfa9a5f8790df9 /gdb/cli | |
parent | cbba3ecd36f0f861e4e810fbd5415c9759080cdc (diff) | |
download | gdb-93bcb04349eb500781747a542ececc7a8ba3bd95.zip gdb-93bcb04349eb500781747a542ececc7a8ba3bd95.tar.gz gdb-93bcb04349eb500781747a542ececc7a8ba3bd95.tar.bz2 |
Allow "unlimited" abbreviations
Currently we can abbreviate "on/off/enable/disable/yes/no" in boolean
settings,
(gdb) set non-stop of
(gdb) set non-stop en
we can abbreviate the items of enumeration commands,
(gdb) set print frame-arguments scal
(gdb) set scheduler-locking rep
but we cannot abbreviate "unlimited" in integer commands.
(gdb) set print elements u
No symbol "u" in current context.
This commit fixes that.
Testcases will be in gdb.base/settings.exp and gdb.base/options.exp,
in following patches.
gdb/ChangeLog:
2019-06-13 Pedro Alves <palves@redhat.com>
* cli/cli-setshow.c (is_unlimited_literal): Allow abbreviations.
Diffstat (limited to 'gdb/cli')
-rw-r--r-- | gdb/cli/cli-setshow.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/gdb/cli/cli-setshow.c b/gdb/cli/cli-setshow.c index 5b87f90..96d7bf5 100644 --- a/gdb/cli/cli-setshow.c +++ b/gdb/cli/cli-setshow.c @@ -132,12 +132,16 @@ deprecated_show_value_hack (struct ui_file *ignore_file, static int is_unlimited_literal (const char *arg) { - size_t len = sizeof ("unlimited") - 1; - arg = skip_spaces (arg); - return (strncmp (arg, "unlimited", len) == 0 - && (isspace (arg[len]) || arg[len] == '\0')); + const char *p = skip_to_space (arg); + + size_t len = p - arg; + + if (len > 0 && strncmp ("unlimited", arg, len) == 0) + return true; + + return false; } |