summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPedro Alves <palves@redhat.com>2016-03-18 19:15:55 +0000
committerPedro Alves <palves@redhat.com>2016-03-18 19:15:55 +0000
commit901a9351bd92058affbcd4372ebcb8b865cc96f2 (patch)
tree97b4c7cc162a45c35cac3022faf13db79d7b6bff
parentcc1d1567294b483db41221e175ee6f95196ecdbc (diff)
downloadbinutils-gdb-901a9351bd92058affbcd4372ebcb8b865cc96f2.tar.gz
TUI: check whether in secondary prompt instead of immediate_quit
As can be seen in the tui_redisplay_readline comment: "The command could call prompt_for_continue and we must not restore SingleKey so that the prompt and normal keymap are used." immediate_quit is being used as proxy for "secondary prompt". We have a better predicate nowadays, so use it. gdb/ChangeLog: yyyy-mm-dd Pedro Alves <palves@redhat.com> * tui/tui-io.c (tui_redisplay_readline): Check gdb_in_secondary_prompt_p instead of immediate_quit. * tui/tui.c: Include top.h. (tui_rl_startup_hook): Check gdb_in_secondary_prompt_p instead of immediate_quit.
-rw-r--r--gdb/tui/tui-io.c2
-rw-r--r--gdb/tui/tui.c4
2 files changed, 4 insertions, 2 deletions
diff --git a/gdb/tui/tui-io.c b/gdb/tui/tui-io.c
index 18c648c08fd..3fa32db2104 100644
--- a/gdb/tui/tui-io.c
+++ b/gdb/tui/tui-io.c
@@ -212,7 +212,7 @@ tui_redisplay_readline (void)
The command could call prompt_for_continue and we must not
restore SingleKey so that the prompt and normal keymap are used. */
if (tui_current_key_mode == TUI_ONE_COMMAND_MODE && rl_end == 0
- && immediate_quit == 0)
+ && !gdb_in_secondary_prompt_p ())
tui_set_key_mode (TUI_SINGLE_KEY_MODE);
if (tui_current_key_mode == TUI_SINGLE_KEY_MODE)
diff --git a/gdb/tui/tui.c b/gdb/tui/tui.c
index 273a0d9d8ba..96f8df7839d 100644
--- a/gdb/tui/tui.c
+++ b/gdb/tui/tui.c
@@ -38,6 +38,7 @@
#include "symtab.h"
#include "source.h"
#include "terminal.h"
+#include "top.h"
#include <ctype.h>
#include <signal.h>
@@ -302,7 +303,8 @@ static int
tui_rl_startup_hook (void)
{
rl_already_prompted = 1;
- if (tui_current_key_mode != TUI_COMMAND_MODE && immediate_quit == 0)
+ if (tui_current_key_mode != TUI_COMMAND_MODE
+ && !gdb_in_secondary_prompt_p ())
tui_set_key_mode (TUI_SINGLE_KEY_MODE);
tui_redisplay_readline ();
return 0;