提交 9dd442b1 编写于 作者: A aliguori

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: NJan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6709 c046a42c-6fe2-441c-8c8c-71466251a162
上级 f220174d
......@@ -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
......@@ -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;
......
......@@ -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)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册