diff options
author | Vladimir Prus <vladimir@codesourcery.com> | 2010-03-23 21:32:28 +0000 |
---|---|---|
committer | Vladimir Prus <vladimir@codesourcery.com> | 2010-03-23 21:32:28 +0000 |
commit | a7bdde9e633ffde58462e01bdfb0d1ee9a642d7c (patch) | |
tree | 21df3445afaf8f0d2a61166c724029025fbf834c /gdb/mi | |
parent | 64e3cf3d4f121e456a09c3998c4aa6d739e61f8a (diff) | |
download | fsf-binutils-gdb-a7bdde9e633ffde58462e01bdfb0d1ee9a642d7c.zip fsf-binutils-gdb-a7bdde9e633ffde58462e01bdfb0d1ee9a642d7c.tar.gz fsf-binutils-gdb-a7bdde9e633ffde58462e01bdfb0d1ee9a642d7c.tar.bz2 |
Unify actions and commands
* defs.h (read_command_lines, read_command_lines_1): New
parameters validator and closure.
* tracepoint.h (struct action_line): Remove.
* breakpoint.h (struct breakpoint): Remove the 'actions'
field.
* defs.h (enum command_control_type): New value
while_stepping_control.
(struct command_line): Add comments.
* breakpoint.c (breakoint_is_tracepoint): New.
(breakpoint_set_commands): For tracepoints,
verify the commands are permissible.
(check_tracepoint_commands): New.
(commands_command): Require that each new line is validated using
check_tracepoint_command, if we set commands for a tracepoint.
(create_tracepoint_from_upload): Likewise.
(print_one_breakpoint_location): Remove the code to print
actions specifically.
(tracepoint_save_command): Relay to print_command_lines.
* cli/cli-script.c (process_next_line): New parameters validator
and closure. Handle 'while-stepping'. Call validator if not null.
(read_command_lines, read_command_lines1): Likewise.
(recurse_read_control_structure): New parameters validator and
closure. Handle while_stepping_control.
(print_command_lines): Handle while-stepping.
(get_command_line, define_command, document_command): Adjust.
* remote.c (remote_download_tracepoint): Adjust.
* tracepoint.c (make_cleanup_free_actions, read_actions)
(free_actions, do_free_actions_cleanup): Remove.
(trace_actions_command): Use read_command_lines.
(validate_actionline): Use error in one place.
(encode_actions_1): New, extracted from...
(encode_actions): ...this. Also use cleanups for exception
safety.
(trace_dump_command): Adjust.
* mi/mi-cmd-break (mi_cmd_break_commands): Validate commands if
it's tracepoint.
Diffstat (limited to 'gdb/mi')
-rw-r--r-- | gdb/mi/mi-cmd-break.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/gdb/mi/mi-cmd-break.c b/gdb/mi/mi-cmd-break.c index 3ed652c..204565c 100644 --- a/gdb/mi/mi-cmd-break.c +++ b/gdb/mi/mi-cmd-break.c @@ -271,7 +271,12 @@ mi_cmd_break_commands (char *command, char **argv, int argc) mi_command_line_array_ptr = 1; mi_command_line_array_cnt = argc; - break_command = read_command_lines_1 (mi_read_next_line, 1); + if (breakpoint_is_tracepoint (b)) + break_command = read_command_lines_1 (mi_read_next_line, 1, + check_tracepoint_command, b); + else + break_command = read_command_lines_1 (mi_read_next_line, 1, 0, 0); + breakpoint_set_commands (b, break_command); } |