diff options
author | Stephane Carrez <stcarrez@nerim.fr> | 2003-07-23 21:22:14 +0000 |
---|---|---|
committer | Stephane Carrez <stcarrez@nerim.fr> | 2003-07-23 21:22:14 +0000 |
commit | e4aae444cb90e1a42c6048b67a0f7565dd88ed50 (patch) | |
tree | 9c99456f543585f0937302d0c5a5e17253bba183 /gdb/tui/tui-interp.c | |
parent | 8c78862fc534ad220615e5a1cbb0f8cb08dac0f5 (diff) | |
download | gdb-e4aae444cb90e1a42c6048b67a0f7565dd88ed50.tar.gz |
* tui-interp.c (tui_resume): Enable tui when we expected it.
(tui_suspend): Remember in which TUI mode we are.
(_initialize_tui_interp): Use the tui interpreter even when no
other interpreter was set and define in which TUI mode to start.
Diffstat (limited to 'gdb/tui/tui-interp.c')
-rw-r--r-- | gdb/tui/tui-interp.c | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/gdb/tui/tui-interp.c b/gdb/tui/tui-interp.c index f935ea4094c..0c1effb31f6 100644 --- a/gdb/tui/tui-interp.c +++ b/gdb/tui/tui-interp.c @@ -31,6 +31,9 @@ #include "tui/tui.h" #include "tui/tuiIO.h" +/* Set to 1 when the TUI mode must be activated when we first start gdb. */ +static int tui_start_enabled = 0; + /* Cleanup the tui before exiting. */ static void @@ -61,13 +64,15 @@ static int tui_resume (void *data) { gdb_setup_readline (); - tui_enable (); + if (tui_start_enabled) + tui_enable (); return 1; } static int tui_suspend (void *data) { + tui_start_enabled = tui_active; tui_disable (); return 1; } @@ -177,4 +182,12 @@ _initialize_tui_interp (void) /* Create a default uiout builder for the TUI. */ tui_out = tui_out_new (gdb_stdout); interp_add (interp_new ("tui", NULL, tui_out, &procs)); + if (interpreter_p && strcmp (interpreter_p, "tui") == 0) + tui_start_enabled = 1; + + if (interpreter_p && strcmp (interpreter_p, INTERP_CONSOLE) == 0) + { + xfree (interpreter_p); + interpreter_p = xstrdup ("tui"); + } } |