| OLD | NEW |
| 1 /* Handling of inferior events for the event loop for GDB, the GNU debugger. | 1 /* Handling of inferior events for the event loop for GDB, the GNU debugger. |
| 2 Copyright (C) 1999, 2007-2012 Free Software Foundation, Inc. | 2 Copyright (C) 1999, 2007-2012 Free Software Foundation, Inc. |
| 3 Written by Elena Zannoni <ezannoni@cygnus.com> of Cygnus Solutions. | 3 Written by Elena Zannoni <ezannoni@cygnus.com> of Cygnus Solutions. |
| 4 | 4 |
| 5 This file is part of GDB. | 5 This file is part of GDB. |
| 6 | 6 |
| 7 This program is free software; you can redistribute it and/or modify | 7 This program is free software; you can redistribute it and/or modify |
| 8 it under the terms of the GNU General Public License as published by | 8 it under the terms of the GNU General Public License as published by |
| 9 the Free Software Foundation; either version 3 of the License, or | 9 the Free Software Foundation; either version 3 of the License, or |
| 10 (at your option) any later version. | 10 (at your option) any later version. |
| (...skipping 11 matching lines...) Expand all Loading... |
| 22 #include "target.h" /* For enum inferior_event_type. */ | 22 #include "target.h" /* For enum inferior_event_type. */ |
| 23 #include "event-loop.h" | 23 #include "event-loop.h" |
| 24 #include "event-top.h" | 24 #include "event-top.h" |
| 25 #include "inf-loop.h" | 25 #include "inf-loop.h" |
| 26 #include "remote.h" | 26 #include "remote.h" |
| 27 #include "exceptions.h" | 27 #include "exceptions.h" |
| 28 #include "language.h" | 28 #include "language.h" |
| 29 #include "gdbthread.h" | 29 #include "gdbthread.h" |
| 30 #include "continuations.h" | 30 #include "continuations.h" |
| 31 #include "interps.h" | 31 #include "interps.h" |
| 32 #include "top.h" |
| 32 | 33 |
| 33 static int fetch_inferior_event_wrapper (gdb_client_data client_data); | 34 static int fetch_inferior_event_wrapper (gdb_client_data client_data); |
| 34 | 35 |
| 35 /* General function to handle events in the inferior. So far it just | 36 /* General function to handle events in the inferior. So far it just |
| 36 takes care of detecting errors reported by select() or poll(), | 37 takes care of detecting errors reported by select() or poll(), |
| 37 otherwise it assumes that all is OK, and goes on reading data from | 38 otherwise it assumes that all is OK, and goes on reading data from |
| 38 the fd. This however may not always be what we want to do. */ | 39 the fd. This however may not always be what we want to do. */ |
| 39 void | 40 void |
| 40 inferior_event_handler (enum inferior_event_type event_type, | 41 inferior_event_handler (enum inferior_event_type event_type, |
| 41 gdb_client_data client_data) | 42 gdb_client_data client_data) |
| (...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 99 do_all_continuations_thread (inferior_thread (), 0); | 100 do_all_continuations_thread (inferior_thread (), 0); |
| 100 else | 101 else |
| 101 do_all_continuations (0); | 102 do_all_continuations (0); |
| 102 | 103 |
| 103 /* When running a command list (from a user command, say), these | 104 /* When running a command list (from a user command, say), these |
| 104 are only run when the command list is all done. */ | 105 are only run when the command list is all done. */ |
| 105 if (interpreter_async) | 106 if (interpreter_async) |
| 106 { | 107 { |
| 107 volatile struct gdb_exception e; | 108 volatile struct gdb_exception e; |
| 108 | 109 |
| 109 » if (info_verbose | 110 » check_frame_language_change (); |
| 110 » && current_language != expected_language | |
| 111 » && language_mode == language_mode_auto) | |
| 112 » language_info (1);» /* Print what changed. */ | |
| 113 | 111 |
| 114 /* Don't propagate breakpoint commands errors. Either we're | 112 /* Don't propagate breakpoint commands errors. Either we're |
| 115 stopping or some command resumes the inferior. The user will | 113 stopping or some command resumes the inferior. The user will |
| 116 be informed. */ | 114 be informed. */ |
| 117 TRY_CATCH (e, RETURN_MASK_ALL) | 115 TRY_CATCH (e, RETURN_MASK_ALL) |
| 118 { | 116 { |
| 119 bpstat_do_actions (); | 117 bpstat_do_actions (); |
| 120 } | 118 } |
| 121 exception_print (gdb_stderr, e); | 119 exception_print (gdb_stderr, e); |
| 122 } | 120 } |
| (...skipping 17 matching lines...) Expand all Loading... |
| 140 | 138 |
| 141 discard_cleanups (cleanup_if_error); | 139 discard_cleanups (cleanup_if_error); |
| 142 } | 140 } |
| 143 | 141 |
| 144 static int | 142 static int |
| 145 fetch_inferior_event_wrapper (gdb_client_data client_data) | 143 fetch_inferior_event_wrapper (gdb_client_data client_data) |
| 146 { | 144 { |
| 147 fetch_inferior_event (client_data); | 145 fetch_inferior_event (client_data); |
| 148 return 1; | 146 return 1; |
| 149 } | 147 } |
| OLD | NEW |