diff options
author | Andrew Cagney <cagney@redhat.com> | 2005-01-13 22:08:27 +0000 |
---|---|---|
committer | Andrew Cagney <cagney@redhat.com> | 2005-01-13 22:08:27 +0000 |
commit | ce43223b29f59ab4642af0a3ce5b073fe1dcd3de (patch) | |
tree | ea64fc7dc96c14ae329d4b833e1121ad1e442606 /gdb/mi | |
parent | f30f06b84e743947076abbd254918bba8033f8d4 (diff) | |
download | gdb-ce43223b29f59ab4642af0a3ce5b073fe1dcd3de.zip gdb-ce43223b29f59ab4642af0a3ce5b073fe1dcd3de.tar.gz gdb-ce43223b29f59ab4642af0a3ce5b073fe1dcd3de.tar.bz2 |
2005-01-13 Andrew Cagney <cagney@gnu.org>
* breakpoint.c (gdb_breakpoint_query): Update, use
catch_exceptions_with_msg.
(do_captured_breakpoint): Add uiout parameter.
(gdb_breakpoint): Update, use catch_exceptions_with_msg.
* mi/mi-main.c (mi_cmd_thread_select): Pass mi_error_message to
gdb_thread_select. Return MI_CMD_ERROR instead of
MI_CMD_CAUGHT_ERROR.
(mi_cmd_thread_list_ids): Ditto for gdb_list_thread_ids.
(enum captured_mi_execute_command_actions): Delete
EXECUTE_COMMAND_DISPLAY_ERROR.
(captured_mi_execute_command): Delete code handling
MI_CMD_CAUGHT_ERROR.
(mi_execute_command): Don't check for
EXECUTE_COMMAND_DISPLAY_ERROR.
* mi/mi-cmd-break.c (breakpoint_notify): Update call to
gdb_breakpoint_query.
(mi_cmd_break_insert): Pass mi_error_message to gdb_breakpoint.
* mi/mi-cmds.h (enum mi_cmd_result): Delete MI_CMD_CAUGHT_ERROR.
* gdb.h (gdb_thread_select, gdb_list_thread_ids)
(gdb_breakpoint, gdb_breakpoint_query): Add error_message
parameter.
* thread.c (thread_command): Update call.
(gdb_thread_select, gdb_list_thread_ids): Update, call
catch_exceptions_with_msg.
Diffstat (limited to 'gdb/mi')
-rw-r--r-- | gdb/mi/mi-cmd-break.c | 10 | ||||
-rw-r--r-- | gdb/mi/mi-cmds.h | 4 | ||||
-rw-r--r-- | gdb/mi/mi-main.c | 20 |
3 files changed, 12 insertions, 22 deletions
diff --git a/gdb/mi/mi-cmd-break.c b/gdb/mi/mi-cmd-break.c index 528cd3c..6406084 100644 --- a/gdb/mi/mi-cmd-break.c +++ b/gdb/mi/mi-cmd-break.c @@ -39,7 +39,7 @@ enum static void breakpoint_notify (int b) { - gdb_breakpoint_query (uiout, b); + gdb_breakpoint_query (uiout, b, NULL); } @@ -140,12 +140,14 @@ mi_cmd_break_insert (char *command, char **argv, int argc) case REG_BP: rc = gdb_breakpoint (address, condition, 0 /*hardwareflag */ , temp_p, - thread, ignore_count); + thread, ignore_count, + &mi_error_message); break; case HW_BP: rc = gdb_breakpoint (address, condition, 1 /*hardwareflag */ , temp_p, - thread, ignore_count); + thread, ignore_count, + &mi_error_message); break; #if 0 case REGEXP_BP: @@ -163,7 +165,7 @@ mi_cmd_break_insert (char *command, char **argv, int argc) deprecated_set_gdb_event_hooks (old_hooks); if (rc == GDB_RC_FAIL) - return MI_CMD_CAUGHT_ERROR; + return MI_CMD_ERROR; else return MI_CMD_DONE; } diff --git a/gdb/mi/mi-cmds.h b/gdb/mi/mi-cmds.h index f9a08d9..81662bf 100644 --- a/gdb/mi/mi-cmds.h +++ b/gdb/mi/mi-cmds.h @@ -38,10 +38,6 @@ enum mi_cmd_result asprintf'd into the mi_error_message buffer. The main loop will display the error message and the completion prompt. */ MI_CMD_ERROR, - /* An error condition was detected and caught. The error message is - in the global error message buffer. The main loop will display - the error message and the completion prompt. */ - MI_CMD_CAUGHT_ERROR, /* The MI command has already displayed its completion message. Main loop will not display a completion message but will display the completion prompt. */ diff --git a/gdb/mi/mi-main.c b/gdb/mi/mi-main.c index 33ba1be..9d7a06c 100644 --- a/gdb/mi/mi-main.c +++ b/gdb/mi/mi-main.c @@ -61,8 +61,7 @@ enum enum captured_mi_execute_command_actions { EXECUTE_COMMAND_DISPLAY_PROMPT, - EXECUTE_COMMAND_SUPRESS_PROMPT, - EXECUTE_COMMAND_DISPLAY_ERROR + EXECUTE_COMMAND_SUPRESS_PROMPT }; /* This structure is used to pass information from captured_mi_execute_command @@ -233,12 +232,12 @@ mi_cmd_thread_select (char *command, char **argv, int argc) return MI_CMD_ERROR; } else - rc = gdb_thread_select (uiout, argv[0]); + rc = gdb_thread_select (uiout, argv[0], &mi_error_message); /* RC is enum gdb_rc if it is successful (>=0) enum return_reason if not (<0). */ if ((int) rc < 0 && (enum return_reason) rc == RETURN_ERROR) - return MI_CMD_CAUGHT_ERROR; + return MI_CMD_ERROR; else if ((int) rc >= 0 && rc == GDB_RC_FAIL) return MI_CMD_ERROR; else @@ -256,10 +255,10 @@ mi_cmd_thread_list_ids (char *command, char **argv, int argc) return MI_CMD_ERROR; } else - rc = gdb_list_thread_ids (uiout); + rc = gdb_list_thread_ids (uiout, &mi_error_message); if (rc == GDB_RC_FAIL) - return MI_CMD_CAUGHT_ERROR; + return MI_CMD_ERROR; else return MI_CMD_DONE; } @@ -1091,12 +1090,6 @@ captured_mi_execute_command (struct ui_out *uiout, void *data) } mi_out_rewind (uiout); } - else if (args->rc == MI_CMD_CAUGHT_ERROR) - { - mi_out_rewind (uiout); - args->action = EXECUTE_COMMAND_DISPLAY_ERROR; - return; - } else mi_out_rewind (uiout); } @@ -1171,8 +1164,7 @@ mi_execute_command (char *cmd, int from_tty) mi_parse_free (command); return; } - if (args.action == EXECUTE_COMMAND_DISPLAY_ERROR - || result.reason < 0) + if (result.reason < 0) { char *msg = result.message; struct cleanup *cleanup = make_cleanup (xfree, msg); |