diff options
author | Keith Packard <keithp@keithp.com> | 2005-08-24 01:42:19 +0000 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2005-08-24 01:42:19 +0000 |
commit | 5198e71eaf07538307843a58a57f4551411f40b6 (patch) | |
tree | 66ec14142585c88abd5468740cbf1b1520c0fada | |
parent | e4166936b9d2e1197efcdc378a6113a6c68a41ed (diff) |
_cairo_surface_show_glyphs may return UNSUPPORTED in which case a call to scaled_font->backend->show_glyphs is needed.
reviewed by: cworth
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | src/cairo-meta-surface.c | 17 |
2 files changed, 25 insertions, 0 deletions
@@ -2,6 +2,14 @@ reviewed by: cworth + * src/cairo-meta-surface.c: (_cairo_meta_surface_replay): + _cairo_surface_show_glyphs may return UNSUPPORTED in which + case a call to scaled_font->backend->show_glyphs is needed. + +2005-08-24 Keith Packard <keithp@keithp.com> + + reviewed by: cworth + * src/cairo-gstate-private.h: * src/cairo-gstate.c: (_cairo_gstate_init), (_cairo_gstate_apply_device_transform), diff --git a/src/cairo-meta-surface.c b/src/cairo-meta-surface.c index f218ae24..2d3ae362 100644 --- a/src/cairo-meta-surface.c +++ b/src/cairo-meta-surface.c @@ -541,6 +541,23 @@ _cairo_meta_surface_replay (cairo_surface_t *surface, command->show_glyphs.height, command->show_glyphs.glyphs, command->show_glyphs.num_glyphs); + if (status != CAIRO_INT_STATUS_UNSUPPORTED) + break; + + status = (*command->show_glyphs.scaled_font->backend-> + show_glyphs) (command->show_glyphs.scaled_font, + command->show_glyphs.operator, + &command->show_glyphs.pattern.base, + target, + command->show_glyphs.source_x, + command->show_glyphs.source_y, + command->show_glyphs.dest_x, + command->show_glyphs.dest_y, + command->show_glyphs.width, + command->show_glyphs.height, + command->show_glyphs.glyphs, + command->show_glyphs.num_glyphs); + break; case CAIRO_COMMAND_FILL_PATH: |