diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2011-07-26 15:50:32 +0100 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2011-07-26 16:00:43 +0100 |
commit | 91faf9c1cf79f44b48c0f14d2d551a68bf38b5a5 (patch) | |
tree | e861a74cc04c860327df558388c7846a144dd6c8 /src/cairo-surface-fallback.c | |
parent | a69335a84eb9225b477cc8c753470eb3805b852c (diff) | |
download | cairo-91faf9c1cf79f44b48c0f14d2d551a68bf38b5a5.tar.gz |
composite: Pass unbounded extents to initialisation
For an unbounded surface we cannot assume (0, 0, surface_width,
surface_height) as that is wrong and causes the operation to appear
clipped.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'src/cairo-surface-fallback.c')
-rw-r--r-- | src/cairo-surface-fallback.c | 19 |
1 files changed, 5 insertions, 14 deletions
diff --git a/src/cairo-surface-fallback.c b/src/cairo-surface-fallback.c index 21966fe42..bd0327479 100644 --- a/src/cairo-surface-fallback.c +++ b/src/cairo-surface-fallback.c @@ -829,9 +829,7 @@ _cairo_surface_fallback_paint (cairo_surface_t *surface, if (!_cairo_surface_get_extents (surface, &rect)) ASSERT_NOT_REACHED; - status = _cairo_composite_rectangles_init_for_paint (&extents, - rect.width, - rect.height, + status = _cairo_composite_rectangles_init_for_paint (&extents, &rect, op, source, clip); if (unlikely (status)) @@ -918,8 +916,7 @@ _cairo_surface_fallback_mask (cairo_surface_t *surface, if (!_cairo_surface_get_extents (surface, &rect)) ASSERT_NOT_REACHED; - status = _cairo_composite_rectangles_init_for_mask (&extents, - rect.width, rect.height, + status = _cairo_composite_rectangles_init_for_mask (&extents, &rect, op, source, mask, clip); if (unlikely (status)) return status; @@ -956,9 +953,7 @@ _cairo_surface_fallback_stroke (cairo_surface_t *surface, if (!_cairo_surface_get_extents (surface, &rect)) ASSERT_NOT_REACHED; - status = _cairo_composite_rectangles_init_for_stroke (&extents, - rect.width, - rect.height, + status = _cairo_composite_rectangles_init_for_stroke (&extents, &rect, op, source, path, stroke_style, ctm, clip); @@ -1039,9 +1034,7 @@ _cairo_surface_fallback_fill (cairo_surface_t *surface, if (!_cairo_surface_get_extents (surface, &rect)) ASSERT_NOT_REACHED; - status = _cairo_composite_rectangles_init_for_fill (&extents, - rect.width, - rect.height, + status = _cairo_composite_rectangles_init_for_fill (&extents, &rect, op, source, path, clip); if (unlikely (status)) @@ -1187,9 +1180,7 @@ _cairo_surface_fallback_show_glyphs (cairo_surface_t *surface, if (!_cairo_surface_get_extents (surface, &rect)) ASSERT_NOT_REACHED; - status = _cairo_composite_rectangles_init_for_glyphs (&extents, - rect.width, - rect.height, + status = _cairo_composite_rectangles_init_for_glyphs (&extents, &rect, op, source, scaled_font, glyphs, num_glyphs, |