diff options
author | Yao Qi <yao@codesourcery.com> | 2014-02-22 14:42:12 +0800 |
---|---|---|
committer | Yao Qi <yao@codesourcery.com> | 2014-03-06 15:03:30 +0800 |
commit | 0c13193f334ea744a251f768179468b5a17915b6 (patch) | |
tree | 290492a472e6dbe7c54c365a3113e29bd207ce80 | |
parent | 2217da06d8dbaf59c17bd363935bd926e5fdc8ab (diff) | |
download | gdb-0c13193f334ea744a251f768179468b5a17915b6.zip gdb-0c13193f334ea744a251f768179468b5a17915b6.tar.gz gdb-0c13193f334ea744a251f768179468b5a17915b6.tar.bz2 |
Handle parse number error in goto_bookmark_command
In GDB mainline, the error message for goto-bookmark
isn't perfect.
(gdb) goto-bookmark 1.1
goto-bookmark: no bookmark found for ''.
This patch tweaks the error message by checking the return value of
get_number. With patch applied, it becomes:
(gdb) goto-bookmark 1.1
goto-bookmark: invalid bookmark number '1.1'.
gdb:
2014-03-06 Yao Qi <yao@codesourcery.com>
* reverse.c (goto_bookmark_command): Add local 'p'. Emit error
early if get_number returns zero. Use 'p' instead of 'args'.
-rw-r--r-- | gdb/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/reverse.c | 7 |
2 files changed, 11 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 8088e64..3a1124a 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,10 @@ 2014-03-06 Yao Qi <yao@codesourcery.com> + * reverse.c (goto_bookmark_command): Add local 'p'. Emit error + early if get_number returns zero. Use 'p' instead of 'args'. + +2014-03-06 Yao Qi <yao@codesourcery.com> + * cli/cli-utils.c (get_number_trailer): Add '\n' at the end of message. diff --git a/gdb/reverse.c b/gdb/reverse.c index 582252c..30a0328 100644 --- a/gdb/reverse.c +++ b/gdb/reverse.c @@ -250,6 +250,7 @@ goto_bookmark_command (char *args, int from_tty) { struct bookmark *b; unsigned long num; + char *p = args; if (args == NULL || args[0] == '\0') error (_("Command requires an argument.")); @@ -274,6 +275,10 @@ goto_bookmark_command (char *args, int from_tty) /* General case. Bookmark identified by bookmark number. */ num = get_number (&args); + + if (num == 0) + error (_("goto-bookmark: invalid bookmark number '%s'."), p); + ALL_BOOKMARKS (b) if (b->number == num) break; @@ -285,7 +290,7 @@ goto_bookmark_command (char *args, int from_tty) return; } /* Not found. */ - error (_("goto-bookmark: no bookmark found for '%s'."), args); + error (_("goto-bookmark: no bookmark found for '%s'."), p); } static int |