From 56d8a7a155c39564c828b74b9844ea51f0b864f0 Mon Sep 17 00:00:00 2001 From: Daiki Ueno Date: Tue, 8 Apr 2014 18:46:18 +0900 Subject: [PATCH] terminal: Don't try to render RLE used as a placeholder weston-terminal uses RLE (U+202B) as a placeholder of the right half of a double width character. However, not all fonts include this glyph and cairo renders it as .notdef (glyph index 0) in that case. --- clients/terminal.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/clients/terminal.c b/clients/terminal.c index beec877..5931ce2 100644 --- a/clients/terminal.c +++ b/clients/terminal.c @@ -1094,6 +1094,12 @@ redraw_handler(struct widget *widget, void *data) cairo_stroke(cr); } + /* skip space glyph (RLE) we use as a placeholder of + the right half of a double-width character, + because RLE is not available in every font. */ + if (p_row[col].ch == 0x200B) + continue; + glyph_run_add(&run, text_x, text_y, &p_row[col]); } } -- 2.7.4