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;