From d1a9756ab8c2c2578cbcb325efffe0b0af916944 Mon Sep 17 00:00:00 2001 From: Wenchao Xia Date: Tue, 27 Aug 2013 20:38:17 +0800 Subject: [PATCH] monitor: avoid use of global *cur_mon in readline_completion() Now all completion functions do not use *cur_mon any more, instead they use rs->mon. In short, structure ReadLineState decide where the complete action would be taken now. Tested with the case that qemu have two telnet monitors, auto completion function works normal. Signed-off-by: Wenchao Xia Reviewed-by: Eric Blake Signed-off-by: Luiz Capitulino --- readline.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/readline.c b/readline.c index c91b324cb1..abf27ddec3 100644 --- a/readline.c +++ b/readline.c @@ -276,7 +276,6 @@ void readline_set_completion_index(ReadLineState *rs, int index) static void readline_completion(ReadLineState *rs) { - Monitor *mon = cur_mon; int len, i, j, max_width, nb_cols, max_prefix; char *cmdline; @@ -300,7 +299,7 @@ static void readline_completion(ReadLineState *rs) if (len > 0 && rs->completions[0][len - 1] != '/') readline_insert_char(rs, ' '); } else { - monitor_printf(mon, "\n"); + monitor_printf(rs->mon, "\n"); max_width = 0; max_prefix = 0; for(i = 0; i < rs->nb_completions; i++) {