diff options
author | Doug Evans <xdje42@gmail.com> | 2013-11-23 11:47:24 -0800 |
---|---|---|
committer | Doug Evans <xdje42@gmail.com> | 2013-11-23 11:47:24 -0800 |
commit | 1e9c71b81b1cc28aea5b8cceeeac5435d37b752a (patch) | |
tree | 6e3b3e9602943ac406005282aca2063c85d01a4b /gdb/cli | |
parent | 9df9dbe031e8f643651f638823eed773a4037af7 (diff) | |
download | gdb-1e9c71b81b1cc28aea5b8cceeeac5435d37b752a.zip gdb-1e9c71b81b1cc28aea5b8cceeeac5435d37b752a.tar.gz gdb-1e9c71b81b1cc28aea5b8cceeeac5435d37b752a.tar.bz2 |
cli/cli-script.c (multi_line_command_p): New function.
* cli/cli-script.c (multi_line_command_p): New function.
(recurse_read_control_structure, read_command_lines_1): Call it.
(execute_control_command): Consistently have a blank line between
each case.
Diffstat (limited to 'gdb/cli')
-rw-r--r-- | gdb/cli/cli-script.c | 39 |
1 files changed, 24 insertions, 15 deletions
diff --git a/gdb/cli/cli-script.c b/gdb/cli/cli-script.c index 3e8ed7f..387a11e 100644 --- a/gdb/cli/cli-script.c +++ b/gdb/cli/cli-script.c @@ -78,6 +78,25 @@ struct user_args *user_args; +/* Return non-zero if TYPE is a multi-line command (i.e., is terminated + by "end"). */ + +static int +multi_line_command_p (enum command_control_type type) +{ + switch (type) + { + case if_control: + case while_control: + case while_stepping_control: + case commands_control: + case python_control: + return 1; + default: + return 0; + } +} + /* Allocate, initialize a new command line structure for one of the control commands (if/while). */ @@ -556,6 +575,7 @@ execute_control_command (struct command_line *cmd) break; } + case commands_control: { /* Breakpoint commands list, record the commands in the @@ -567,6 +587,7 @@ execute_control_command (struct command_line *cmd) ret = commands_from_control_command (new_line, cmd); break; } + case python_control: { eval_python_from_control_command (cmd); @@ -1103,11 +1124,7 @@ recurse_read_control_structure (char * (*read_next_line_func) (void), if (val == end_command) { - if (current_cmd->control_type == while_control - || current_cmd->control_type == while_stepping_control - || current_cmd->control_type == if_control - || current_cmd->control_type == python_control - || current_cmd->control_type == commands_control) + if (multi_line_command_p (current_cmd->control_type)) { /* Success reading an entire canned sequence of commands. */ ret = simple_control; @@ -1156,11 +1173,7 @@ recurse_read_control_structure (char * (*read_next_line_func) (void), /* If the latest line is another control structure, then recurse on it. */ - if (next->control_type == while_control - || next->control_type == while_stepping_control - || next->control_type == if_control - || next->control_type == python_control - || next->control_type == commands_control) + if (multi_line_command_p (next->control_type)) { control_level++; ret = recurse_read_control_structure (read_next_line_func, next, @@ -1275,11 +1288,7 @@ read_command_lines_1 (char * (*read_next_line_func) (void), int parse_commands, break; } - if (next->control_type == while_control - || next->control_type == if_control - || next->control_type == python_control - || next->control_type == commands_control - || next->control_type == while_stepping_control) + if (multi_line_command_p (next->control_type)) { control_level++; ret = recurse_read_control_structure (read_next_line_func, next, |