mirror of
https://github.com/bminor/binutils-gdb.git
synced 2025-12-26 17:18:55 +00:00
"enable count" user input error handling (PR gdb/15678)
Typing "enable count" by itself crashes GDB. Also, if you omit the breakpoint number/range, the error message is not very clear: (gdb) enable count 2 warning: bad breakpoint number at or near '' (gdb) enable count Segmentation fault (core dumped) With this patch, the error messages are slightly more helpful: (gdb) enable count 2 Argument required (one or more breakpoint numbers). (gdb) enable count Argument required (hit count). gdb/ChangeLog: PR gdb/15678 * breakpoint.c (map_breakpoint_numbers): Check for empty args string. (enable_count_command): Check args for NULL value. gdb/testsuite/ChangeLog: PR gdb/15678 * gdb.base/ena-dis-br.exp: Test "enable count" for bad user input.
This commit is contained in:
@@ -14880,7 +14880,7 @@ map_breakpoint_numbers (char *args, void (*function) (struct breakpoint *,
|
||||
int match;
|
||||
struct get_number_or_range_state state;
|
||||
|
||||
if (args == 0)
|
||||
if (args == 0 || *args == '\0')
|
||||
error_no_arg (_("one or more breakpoint numbers"));
|
||||
|
||||
init_number_or_range (&state, args);
|
||||
@@ -15217,7 +15217,12 @@ do_map_enable_count_breakpoint (struct breakpoint *bpt, void *countptr)
|
||||
static void
|
||||
enable_count_command (char *args, int from_tty)
|
||||
{
|
||||
int count = get_number (&args);
|
||||
int count;
|
||||
|
||||
if (args == NULL)
|
||||
error_no_arg (_("hit count"));
|
||||
|
||||
count = get_number (&args);
|
||||
|
||||
map_breakpoint_numbers (args, do_map_enable_count_breakpoint, &count);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user