From 1cad61030160ebc4b73e1f4212155a180d417be3 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sun, 16 Apr 2017 22:50:02 -0700 Subject: [PATCH] Work around bug with unibyte Linux consoles * src/terminal.c (terminal_glyph_code): Skip the UTF-8 stuff if the terminal's coding system is unibyte (Bug#26396). --- src/terminal.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/terminal.c b/src/terminal.c index 0b1cbe7b791..3d25b36fa56 100644 --- a/src/terminal.c +++ b/src/terminal.c @@ -575,7 +575,9 @@ Lisp_Object terminal_glyph_code (struct terminal *t, int ch) { #if HAVE_STRUCT_UNIPAIR_UNICODE - if (t->type == output_termcap) + /* Heuristically assume that a terminal supporting glyph codes is in + UTF-8 mode if and only if its coding system is multibyte (Bug#26396). */ + if (t->type == output_termcap && t->terminal_coding->src_multibyte) { /* As a hack, recompute the table when CH is the maximum character. */ -- 2.39.5