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'.
This commit is contained in:
Yao Qi 2014-02-22 14:42:12 +08:00
parent 2217da06d8
commit 0c13193f33
2 changed files with 11 additions and 1 deletions

View File

@ -1,3 +1,8 @@
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

View File

@ -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