[PULL,4/4] console: add question-mark escape operator

Message ID 20170913084051.21378-5-kraxel@redhat.com
State Accepted
Commit 7c336f9fe53b1a500f21241841c7bf4267c7ee14
Headers show
Series
  • Untitled series #4010
Related show

Commit Message

Gerd Hoffmann Sept. 13, 2017, 8:40 a.m.
From: Alexander Graf <agraf@suse.de>


Some termcaps (found using SLES11SP1) use [? sequences. According to man
console_codes (http://linux.die.net/man/4/console_codes) the question mark
is a nop and should simply be ignored.

This patch does exactly that, rendering screen output readable when
outputting guest serial consoles to the graphical console emulator.

Signed-off-by: Alexander Graf <agraf@suse.de>

Message-id: 20170829113818.42482-1-agraf@suse.de
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>

---
 ui/console.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

-- 
2.9.3

Patch

diff --git a/ui/console.c b/ui/console.c
index f0292d7820..b82c27960a 100644
--- a/ui/console.c
+++ b/ui/console.c
@@ -880,8 +880,9 @@  static void console_putchar(QemuConsole *s, int ch)
         } else {
             if (s->nb_esc_params < MAX_ESC_PARAMS)
                 s->nb_esc_params++;
-            if (ch == ';')
+            if (ch == ';' || ch == '?') {
                 break;
+            }
             trace_console_putchar_csi(s->esc_params[0], s->esc_params[1],
                                       ch, s->nb_esc_params);
             s->state = TTY_STATE_NORM;