2008-09-09 Kenichi Handa <handa@m17n.org>
+ * ftfont.c (ftfont_shape_by_flt): Use "combining" FLT for ASCII
+ characters.
+
* composite.c (FORWARD_CHAR): Fix calculation
of (POSITION).pos_byte.
EMACS_UINT len = LGSTRING_GLYPH_LEN (lgstring);
EMACS_UINT i;
struct MFLTFontFT flt_font_ft;
+ MFLT *flt = NULL;
if (! m17n_flt_initialized)
{
flt_font_ft.font = font;
flt_font_ft.ft_face = ft_face;
flt_font_ft.otf = otf;
+ if (ASCII_CHAR_P (gstring.glyphs[0].c))
+ /* A little bit ad hoc. Perhaps, shaper must get script and
+ language information, and select a proper flt for them
+ here. */
+ flt = mflt_get (msymbol ("combining"));
for (i = 0; i < 3; i++)
{
- int result = mflt_run (&gstring, 0, len, &flt_font_ft.flt_font, NULL);
+ int result = mflt_run (&gstring, 0, len, &flt_font_ft.flt_font, flt);
if (result != -2)
break;
gstring.allocated += gstring.allocated;