From 1da56aa01a6fd991e259700ecc5422e2d4282ded Mon Sep 17 00:00:00 2001 From: handa Date: Wed, 23 Jun 2004 05:40:15 +0000 Subject: [PATCH] (mfont__flt_run): Be sure to call rfont->driver->encode_char. --- src/font-flt.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/font-flt.c b/src/font-flt.c index 1522d6a..525e7ae 100644 --- a/src/font-flt.c +++ b/src/font-flt.c @@ -1457,15 +1457,19 @@ mfont__flt_run (MGlyphString *gstring, int from, int to, MRealizedFace *rface) } else { - /* Here we must check if all characters in the range is covered - by some glyph(s). If not, change and of glyphs to - cover uncovered characters. */ + /* Get actual glyph IDs of glyphs. Also check if all characters + in the range is covered by some glyph(s). If not, change + and of glyphs to cover uncovered characters. */ int len = to_pos - from_pos; int pos; MGlyph **glyphs = alloca (sizeof (MGlyph) * len); MGlyph *g, *gend = MGLYPH (to); MGlyph *latest = gend; + for (g = MGLYPH (from); g != gend; g++) + if (g->type == GLYPH_CHAR && ! g->otf_encoded) + g->code + = (rface->rfont->driver->encode_char) (rface->rfont, g->code); for (i = 0; i < len; i++) glyphs[i] = NULL; for (g = MGLYPH (from); g != gend; g++) -- 1.7.10.4