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 | 63858210357ce3f90a264895e9780ab302576a94 (patch) | |
tree | 501fc8be689a5fe5a527204064afbf130dbf3127 /gdb/tui/tui-interp.c | |
parent | 9e1d0fc1a1f904291ab6b1445a21530b3d2edbec (diff) | |
download | binutils-gdb-63858210357ce3f90a264895e9780ab302576a94.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"); + } } |