From: handa Date: Wed, 23 Jun 2004 05:40:15 +0000 (+0000) Subject: (mfont__flt_run): Be sure to call X-Git-Tag: withdl~37 X-Git-Url: http://git.chise.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1da56aa01a6fd991e259700ecc5422e2d4282ded;p=m17n%2Fm17n-lib.git (mfont__flt_run): Be sure to call rfont->driver->encode_char. --- 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++)