This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[5.3 PATCH]: Fix TUI breaking gdb interpreters (mi)


Hi!

Daniel Jacobowitz wrote:
> Two problems:
>  TUI broke the MI interface if TUI is enabled at compile time.  The change
> which did this does was on Sept. 10th, 2002.  There's a typo in the
> ChangeLog which made it hard to find...
>
>        * tui-hooks.c (tui_event_loop): New function.
>        (tui_command_loop): New function to override gdb loop and make sure
>        uiout is set according to TUI mode.
>        (tui_command_loop): Install the specific TUI command hook.
>
> (the second tui_command_loop should have been tui_init_hook).
>
> You can't just override the command loop that way!  MI does this
> conditionally on -i=mi being specified.
>
> This also breaks the bit at the end of gdb/top.c to handle unknown -i=
> switches.

Too bad...

I've committed this patch to avoid the TUI initialization when some interpreter
was specified (It does not make sense to enable TUI when there such interpreter).
I also fixed the ChangeLog typo.

gdb -i=mi seems to work after that (at least better than without it).

	Stephane

2002-11-21  Stephane Carrez  <stcarrez@nerim.fr>

	* tui-hooks.c (tui_init_hook): Don't enable the TUI if a specific
	interpreter is installed.
Index: tui-hooks.c
===================================================================
RCS file: /cvs/src/src/gdb/tui/tui-hooks.c,v
retrieving revision 1.7.2.1
diff -u -p -r1.7.2.1 tui-hooks.c
--- tui-hooks.c	10 Sep 2002 20:00:55 -0000	1.7.2.1
+++ tui-hooks.c	21 Nov 2002 21:13:02 -0000
@@ -420,6 +420,10 @@ tui_event_loop (void)
 static void
 tui_init_hook (char *argv0)
 {
+  /* Don't enable the TUI if a specific interpreter is installed.  */
+  if (interpreter_p)
+    return;
+
   /* Install exit handler to leave the screen in a good shape.  */
   atexit (tui_exit);
 

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]