summaryrefslogtreecommitdiff
path: root/src/cairo-surface-snapshot.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2011-08-14 09:46:01 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2011-08-14 12:37:57 +0100
commit47874aaceaa49f7b08adaf57e7accb0723668f71 (patch)
treede20d278a3980ad49fc45ffd5df41244620f9f0e /src/cairo-surface-snapshot.c
parent161836ab499237d1b1a1c5e0a51af15997a7ea0f (diff)
downloadcairo-47874aaceaa49f7b08adaf57e7accb0723668f71.tar.gz
snapshot: Assert that we do not generate a snapshot clone
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'src/cairo-surface-snapshot.c')
-rw-r--r--src/cairo-surface-snapshot.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/cairo-surface-snapshot.c b/src/cairo-surface-snapshot.c
index adaf7e4c3..c499e0b45 100644
--- a/src/cairo-surface-snapshot.c
+++ b/src/cairo-surface-snapshot.c
@@ -157,6 +157,7 @@ _cairo_surface_snapshot_copy_on_write (cairo_surface_t *surface)
done:
status = _cairo_surface_set_error (surface, clone->status);
+ assert (! _cairo_surface_is_snapshot (clone));
snapshot->target = snapshot->clone = clone;
snapshot->base.type = clone->type;
}
@@ -195,7 +196,7 @@ _cairo_surface_snapshot (cairo_surface_t *surface)
if (surface->snapshot_of != NULL)
return cairo_surface_reference (surface);
- if (surface->backend == &_cairo_surface_snapshot_backend)
+ if (_cairo_surface_is_snapshot (surface))
return cairo_surface_reference (surface);
snapshot = (cairo_surface_snapshot_t *)