monitor: Break out readline_show_prompt (Jan Kiszka)

Break readline_show_prompt out of readline_start so that (re-)printing
the prompt can be controlled in a more fine-grained way.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6709 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
aliguori 2009-03-05 23:01:10 +00:00
parent f220174de8
commit 9dd442b123
3 changed files with 7 additions and 10 deletions

View File

@ -316,5 +316,6 @@ void readline_find_completion(const char *cmdline);
const char *readline_get_history(unsigned int index);
void readline_start(const char *prompt, int is_password,
ReadLineFunc *readline_func, void *opaque);
void readline_show_prompt(void);
#endif

View File

@ -2855,6 +2855,7 @@ void monitor_resume(void)
static void monitor_start_input(void)
{
readline_start("(qemu) ", 0, monitor_handle_command1, NULL);
readline_show_prompt();
}
static void term_event(void *opaque, int event)
@ -2913,6 +2914,7 @@ static void monitor_readline(const char *prompt, int is_password,
char *buf, int buf_size)
{
readline_start(prompt, is_password, monitor_readline_cb, NULL);
readline_show_prompt();
monitor_readline_buf = buf;
monitor_readline_buf_size = buf_size;
monitor_readline_started = 1;

View File

@ -57,7 +57,7 @@ static int term_is_password;
static char term_prompt[256];
static void *term_readline_opaque;
static void term_show_prompt2(void)
void readline_show_prompt(void)
{
term_printf("%s", term_prompt);
term_flush();
@ -66,13 +66,6 @@ static void term_show_prompt2(void)
term_esc_state = IS_NORM;
}
static void term_show_prompt(void)
{
term_show_prompt2();
term_cmd_buf_index = 0;
term_cmd_buf_size = 0;
}
/* update the displayed command line */
static void term_update(void)
{
@ -360,7 +353,7 @@ static void term_completion(void)
j = 0;
}
}
term_show_prompt2();
readline_show_prompt();
}
}
@ -473,7 +466,8 @@ void readline_start(const char *prompt, int is_password,
term_readline_func = readline_func;
term_readline_opaque = opaque;
term_is_password = is_password;
term_show_prompt();
term_cmd_buf_index = 0;
term_cmd_buf_size = 0;
}
const char *readline_get_history(unsigned int index)