cairo_glyph_path() is clipping to early?
cairo_glyph_path() drops glyphs that would be outside the surface when rasterized using the current ctm. This seems like a quirk as for cairo_glyph_path() the glyphs do not really get rasterized yet: cairo_copy_path() for example will not contain the clipped glyphs but imho should contain a representation of all glyphs as the path may be rasterized with a different ctm.
see cairo-gstate.c: _cairo_gstate_transform_glyphs_to_backend
I'd say culling should be optional and not be done for cairo_glyph_path(). Any opinions before I implement that?