[cairo-commit] src/cairo-paginated-surface.c
Carl Worth
cworth at kemper.freedesktop.org
Fri Dec 14 14:05:44 PST 2007
src/cairo-paginated-surface.c | 34 ----------------------------------
1 file changed, 34 deletions(-)
New commits:
commit f6dd037cf3231c2dd0550b0f2e6f3179202c299f
Author: Carl Worth <cworth at cworth.org>
Date: Fri Dec 14 14:02:43 2007 -0800
Remove rasterization when a paginated surace is used as a source
This was an old workaround for a bug that seems to no longer
exist. Thanks to Donn Ingle for pointing out the problem.
diff --git a/src/cairo-paginated-surface.c b/src/cairo-paginated-surface.c
index e14c25b..d9fac1d 100644
--- a/src/cairo-paginated-surface.c
+++ b/src/cairo-paginated-surface.c
@@ -614,43 +614,9 @@ _cairo_paginated_surface_show_glyphs (void *abstract_surface,
static cairo_surface_t *
_cairo_paginated_surface_snapshot (void *abstract_other)
{
- cairo_status_t status;
cairo_paginated_surface_t *other = abstract_other;
- /* XXX: Just making a snapshot of other->meta is what we really
- * want. But this currently triggers a bug somewhere (the "mask"
- * test from the test suite segfaults).
- *
- * For now, we'll create a new image surface and replay onto
- * that. It would be tempting to replay into other->image and then
- * return a snapshot of that, but that will cause the self-copy
- * test to fail, (since our replay will be affected by a clip that
- * should not have any effect on the use of the resulting snapshot
- * as a source).
- */
-
-#if 0
return _cairo_surface_snapshot (other->meta);
-#else
- cairo_rectangle_int_t extents;
- cairo_surface_t *surface;
-
- status = _cairo_surface_get_extents (other->target, &extents);
- if (status)
- return (cairo_surface_t*) &_cairo_surface_nil;
-
- surface = _cairo_paginated_surface_create_image_surface (other,
- extents.width,
- extents.height);
-
- status = _cairo_meta_surface_replay (other->meta, surface);
- if (status) {
- cairo_surface_destroy (surface);
- surface = (cairo_surface_t*) &_cairo_surface_nil;
- }
-
- return surface;
-#endif
}
static const cairo_surface_backend_t cairo_paginated_surface_backend = {
More information about the cairo-commit
mailing list