From 5b0d272717ac6a1a2bc382f591a6a0a30ee52774 Mon Sep 17 00:00:00 2001 From: aliguori Date: Fri, 13 Mar 2009 15:02:28 +0000 Subject: monitor: Provide empty command as final history entry (Jan Kiszka) Provide an empty line as last entry in command line history, just like bash e.g. does. Signed-off-by: Jan Kiszka Signed-off-by: Anthony Liguori git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6842 c046a42c-6fe2-441c-8c8c-71466251a162 --- readline.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'readline.c') diff --git a/readline.c b/readline.c index 9c4b68b53d..9c500f1fec 100644 --- a/readline.c +++ b/readline.c @@ -196,12 +196,14 @@ static void readline_up_char(ReadLineState *rs) static void readline_down_char(ReadLineState *rs) { - if (rs->hist_entry == READLINE_MAX_CMDS - 1 || rs->hist_entry == -1) - return; - if (rs->history[++rs->hist_entry] != NULL) { + if (rs->hist_entry == -1) + return; + if (rs->hist_entry < READLINE_MAX_CMDS - 1 && + rs->history[++rs->hist_entry] != NULL) { pstrcpy(rs->cmd_buf, sizeof(rs->cmd_buf), rs->history[rs->hist_entry]); } else { + rs->cmd_buf[0] = 0; rs->hist_entry = -1; } rs->cmd_buf_index = rs->cmd_buf_size = strlen(rs->cmd_buf); -- cgit v1.2.3