* tuiIO.c (tui_prep_terminal): Save the prompt registered in readline.
(tui_redisplay_readline): Use the last saved prompt. (tui_rl_saved_prompt): New.
This commit is contained in:
parent
26abbdc424
commit
57266a339f
2 changed files with 17 additions and 2 deletions
|
@ -1,3 +1,9 @@
|
|||
2002-10-26 Stephane Carrez <stcarrez@nerim.fr>
|
||||
|
||||
* tuiIO.c (tui_prep_terminal): Save the prompt registered in readline.
|
||||
(tui_redisplay_readline): Use the last saved prompt.
|
||||
(tui_rl_saved_prompt): New.
|
||||
|
||||
2002-10-25 Stephane Carrez <stcarrez@nerim.fr>
|
||||
|
||||
Fix PR gdb/787
|
||||
|
|
|
@ -124,6 +124,10 @@ static FILE *tui_old_rl_outstream;
|
|||
static int tui_readline_pipe[2];
|
||||
#endif
|
||||
|
||||
/* The last gdb prompt that was registered in readline.
|
||||
This may be the main gdb prompt or a secondary prompt. */
|
||||
static char *tui_rl_saved_prompt;
|
||||
|
||||
static unsigned int _tuiHandleResizeDuringIO (unsigned int);
|
||||
|
||||
static void
|
||||
|
@ -194,7 +198,7 @@ tui_redisplay_readline (void)
|
|||
if (tui_current_key_mode == tui_single_key_mode)
|
||||
prompt = "";
|
||||
else
|
||||
prompt = get_prompt ();
|
||||
prompt = tui_rl_saved_prompt;
|
||||
|
||||
c_pos = -1;
|
||||
c_line = -1;
|
||||
|
@ -256,10 +260,15 @@ tui_redisplay_readline (void)
|
|||
}
|
||||
|
||||
/* Readline callback to prepare the terminal. It is called once
|
||||
each time we enter readline. There is nothing to do in curses mode. */
|
||||
each time we enter readline. Terminal is already setup in curses mode. */
|
||||
static void
|
||||
tui_prep_terminal (void)
|
||||
{
|
||||
/* Save the prompt registered in readline to correctly display it.
|
||||
(we can't use gdb_prompt() due to secondary prompts and can't use
|
||||
rl_prompt because it points to an alloca buffer). */
|
||||
xfree (tui_rl_saved_prompt);
|
||||
tui_rl_saved_prompt = xstrdup (rl_prompt);
|
||||
}
|
||||
|
||||
/* Readline callback to restore the terminal. It is called once
|
||||
|
|
Loading…
Reference in a new issue