(In reply to comment #23)
> Karl, do you have test case that context_substitute or create_font is called?
No. As far as I have seen no current Pango version will call these methods, given the way we use Pango and the PangoFontMap methods that we override (as you point out).
However, the PangoFcFontMap API docs say that a PangoFcFontMap should provide these functions. We create a PangoFcFontMap and pass it to Pango, so it would be reasonable for any future version of Pango or any shaper modules to expect these methods to be present.
For example, a call to pango_font_map_load_fontset with a fresh PangoContext that does not have a gfxPangoFontGroup on it will result in a call to these methods.
You can test this by replacing GetFontGroup(context) with NULL in gfx_pango_font_map_load_fontset.
(In reply to comment #23)
> Karl, do you have test case that context_substitute or create_font is called?
No. As far as I have seen no current Pango version will call these methods, given the way we use Pango and the PangoFontMap methods that we override (as you point out).
However, the PangoFcFontMap API docs say that a PangoFcFontMap should provide these functions. We create a PangoFcFontMap and pass it to Pango, so it would be reasonable for any future version of Pango or any shaper modules to expect these methods to be present.
For example, a call to pango_font_ map_load_ fontset with a fresh PangoContext that does not have a gfxPangoFontGroup on it will result in a call to these methods. context) with NULL in gfx_pango_ font_map_ load_fontset.
You can test this by replacing GetFontGroup(