diff options
author | Andrew Cagney <cagney@redhat.com> | 2003-08-08 19:00:08 +0000 |
---|---|---|
committer | Andrew Cagney <cagney@redhat.com> | 2003-08-08 19:00:08 +0000 |
commit | f786f615100c8763f19ddec9943156cd2b94a763 (patch) | |
tree | bdc95d5e9346fafb98185d4a0a8cb657f831e765 /gdb/mi | |
parent | c938e9b01dd1735e2cf1f55f65117f701de560cc (diff) | |
download | gdb-f786f615100c8763f19ddec9943156cd2b94a763.zip gdb-f786f615100c8763f19ddec9943156cd2b94a763.tar.gz gdb-f786f615100c8763f19ddec9943156cd2b94a763.tar.bz2 |
2003-08-08 Andrew Cagney <cagney@redhat.com>
* interps.c (interp_set): Check for a NULL "old_interp".
Index: mi/ChangeLog
2003-08-08 Andrew Cagney <cagney@redhat.com>
* mi-main.c (captured_mi_execute_command): Add "mi2" and "mi3" to
interpreters that hack around CLI.
* mi-interp.c (mi3_command_loop): New function.
(mi_interpreter_resume): Check for "mi3", default to "mi2".
Diffstat (limited to 'gdb/mi')
-rw-r--r-- | gdb/mi/ChangeLog | 7 | ||||
-rw-r--r-- | gdb/mi/mi-interp.c | 13 | ||||
-rw-r--r-- | gdb/mi/mi-main.c | 4 |
3 files changed, 21 insertions, 3 deletions
diff --git a/gdb/mi/ChangeLog b/gdb/mi/ChangeLog index 3122136..520ad4d 100644 --- a/gdb/mi/ChangeLog +++ b/gdb/mi/ChangeLog @@ -1,3 +1,10 @@ +2003-08-08 Andrew Cagney <cagney@redhat.com> + + * mi-main.c (captured_mi_execute_command): Add "mi2" and "mi3" to + interpreters that hack around CLI. + * mi-interp.c (mi3_command_loop): New function. + (mi_interpreter_resume): Check for "mi3", default to "mi2". + 2003-08-07 Andrew Cagney <cagney@redhat.com> * mi-interp.c (_initialize_mi_interp): Register "mi2" and "mi3". diff --git a/gdb/mi/mi-interp.c b/gdb/mi/mi-interp.c index e00e329..b72d7ef 100644 --- a/gdb/mi/mi-interp.c +++ b/gdb/mi/mi-interp.c @@ -60,6 +60,7 @@ static int mi_interp_query_hook (const char *ctlstr, va_list ap); static char *mi_interp_read_one_line_hook (char *prompt, int repeat, char *anno); +static void mi3_command_loop (void); static void mi2_command_loop (void); static void mi1_command_loop (void); @@ -133,10 +134,12 @@ mi_interpreter_resume (void *data) /* If we're _the_ interpreter, take control. */ if (current_interp_named_p (INTERP_MI1)) command_loop_hook = mi1_command_loop; - else if (current_interp_named_p (INTERP_MI)) + else if (current_interp_named_p (INTERP_MI2)) command_loop_hook = mi2_command_loop; + else if (current_interp_named_p (INTERP_MI3)) + command_loop_hook = mi3_command_loop; else - return 0; + command_loop_hook = mi2_command_loop; return 1; } @@ -334,6 +337,12 @@ mi2_command_loop (void) } static void +mi3_command_loop (void) +{ + mi_command_loop (3); +} + +static void mi_command_loop (int mi_version) { #if 0 diff --git a/gdb/mi/mi-main.c b/gdb/mi/mi-main.c index 29eccac..40d3699 100644 --- a/gdb/mi/mi-main.c +++ b/gdb/mi/mi-main.c @@ -1161,7 +1161,9 @@ captured_mi_execute_command (struct ui_out *uiout, void *data) /* If we changed interpreters, DON'T print out anything. */ if (current_interp_named_p (INTERP_MI) - || current_interp_named_p (INTERP_MI1)) + || current_interp_named_p (INTERP_MI1) + || current_interp_named_p (INTERP_MI2) + || current_interp_named_p (INTERP_MI3)) { /* print the result */ /* FIXME: Check for errors here. */ |