mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-12-01 17:23:59 +00:00
bug 715798 pt 2 - fall back to show_text_glyphs even at huge sizes if scaled_font_glyph_path didn't work. r=jrmuizel
This commit is contained in:
parent
172bbba808
commit
8cd04846fc
@ -2007,13 +2007,24 @@ _cairo_gstate_show_text_glyphs (cairo_gstate_t *gstate,
|
||||
transformed_glyphs, num_glyphs,
|
||||
&path);
|
||||
|
||||
if (status == CAIRO_STATUS_SUCCESS) {
|
||||
if (status == CAIRO_STATUS_SUCCESS && !_cairo_path_fixed_fill_is_empty (&path)) {
|
||||
status = _cairo_surface_fill (gstate->target, op, pattern,
|
||||
&path,
|
||||
CAIRO_FILL_RULE_WINDING,
|
||||
gstate->tolerance,
|
||||
gstate->scaled_font->options.antialias,
|
||||
_gstate_get_clip (gstate, &clip));
|
||||
} else {
|
||||
/* if _cairo_scaled_font_glyph_path() failed, maybe the font doesn't support
|
||||
* returning paths, so try the _cairo_surface_show_text_glyphs() option
|
||||
*/
|
||||
status = _cairo_surface_show_text_glyphs (gstate->target, op, pattern,
|
||||
utf8, utf8_len,
|
||||
transformed_glyphs, num_glyphs,
|
||||
transformed_clusters, num_clusters,
|
||||
cluster_flags,
|
||||
gstate->scaled_font,
|
||||
_gstate_get_clip (gstate, &clip));
|
||||
}
|
||||
|
||||
_cairo_path_fixed_fini (&path);
|
||||
|
Loading…
Reference in New Issue
Block a user