summaryrefslogtreecommitdiff
path: root/src/cairo-image-surface.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2012-02-12 11:25:07 +0000
committerChris Wilson <chris@chris-wilson.co.uk>2012-02-15 14:37:11 +0000
commitae3319890eacd1c8282ca6df7b263ac74abb5f8d (patch)
tree16b1f4bab9bcd4cbb13f5e15b01696c788d46203 /src/cairo-image-surface.c
parent92c0b37d04f9df8df53a455c8e8dda1946c84c87 (diff)
downloadcairo-ae3319890eacd1c8282ca6df7b263ac74abb5f8d.tar.gz
win32: Rebase on the new compositor infrastructure
Try and undo all the damage that has acrued over the years by plugging into the compositor pipeline. References: https://bugs.freedesktop.org/show_bug.cgi?id=42739 References: https://bugs.freedesktop.org/show_bug.cgi?id=42821 References: https://bugs.freedesktop.org/show_bug.cgi?id=33081 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'src/cairo-image-surface.c')
-rw-r--r--src/cairo-image-surface.c25
1 files changed, 24 insertions, 1 deletions
diff --git a/src/cairo-image-surface.c b/src/cairo-image-surface.c
index fede14cd7..66f024c56 100644
--- a/src/cairo-image-surface.c
+++ b/src/cairo-image-surface.c
@@ -147,6 +147,7 @@ _cairo_image_surface_init (cairo_image_surface_t *surface,
pixman_image_t *pixman_image,
pixman_format_code_t pixman_format)
{
+ surface->parent = NULL;
surface->pixman_image = pixman_image;
surface->pixman_format = pixman_format;
@@ -714,7 +715,7 @@ _cairo_format_bits_per_pixel (cairo_format_t format)
}
}
- static cairo_surface_t *
+static cairo_surface_t *
_cairo_image_surface_create_similar (void *abstract_other,
cairo_content_t content,
int width,
@@ -722,6 +723,8 @@ _cairo_image_surface_create_similar (void *abstract_other,
{
cairo_image_surface_t *other = abstract_other;
+ TRACE ((stderr, "%s (other=%u)\n", __FUNCTION__, other->base.unique_id));
+
if (! _cairo_image_surface_is_size_valid (width, height))
return _cairo_surface_create_in_error (_cairo_error (CAIRO_STATUS_INVALID_SIZE));
@@ -872,6 +875,10 @@ _cairo_image_surface_paint (void *abstract_surface,
const cairo_clip_t *clip)
{
cairo_image_surface_t *surface = abstract_surface;
+
+ TRACE ((stderr, "%s (surface=%d)\n",
+ __FUNCTION__, surface->base.unique_id));
+
return _cairo_compositor_paint (surface->compositor,
&surface->base, op, source, clip);
}
@@ -884,6 +891,10 @@ _cairo_image_surface_mask (void *abstract_surface,
const cairo_clip_t *clip)
{
cairo_image_surface_t *surface = abstract_surface;
+
+ TRACE ((stderr, "%s (surface=%d)\n",
+ __FUNCTION__, surface->base.unique_id));
+
return _cairo_compositor_mask (surface->compositor,
&surface->base, op, source, mask, clip);
}
@@ -901,6 +912,10 @@ _cairo_image_surface_stroke (void *abstract_surface,
const cairo_clip_t *clip)
{
cairo_image_surface_t *surface = abstract_surface;
+
+ TRACE ((stderr, "%s (surface=%d)\n",
+ __FUNCTION__, surface->base.unique_id));
+
return _cairo_compositor_stroke (surface->compositor, &surface->base,
op, source, path,
style, ctm, ctm_inverse,
@@ -918,6 +933,10 @@ _cairo_image_surface_fill (void *abstract_surface,
const cairo_clip_t *clip)
{
cairo_image_surface_t *surface = abstract_surface;
+
+ TRACE ((stderr, "%s (surface=%d)\n",
+ __FUNCTION__, surface->base.unique_id));
+
return _cairo_compositor_fill (surface->compositor, &surface->base,
op, source, path,
fill_rule, tolerance, antialias,
@@ -934,6 +953,10 @@ _cairo_image_surface_glyphs (void *abstract_surface,
const cairo_clip_t *clip)
{
cairo_image_surface_t *surface = abstract_surface;
+
+ TRACE ((stderr, "%s (surface=%d)\n",
+ __FUNCTION__, surface->base.unique_id));
+
return _cairo_compositor_glyphs (surface->compositor, &surface->base,
op, source,
glyphs, num_glyphs, scaled_font,