summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2011-08-15 11:50:44 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2011-08-15 12:08:27 +0100
commitc715d52af547741f5e57182331ccd566efcd8835 (patch)
tree186f1c16740045bbdc02cc2ba17c85c807d43c99 /src
parent2a694a969ca795979c572fd08b877680f579e765 (diff)
snapshot: restore the order of detach vs callback
Mucking around in 99fa5ff6c211, I tweaked the order to mark the snapshot as detached before calling the callback. xcb relies on the old ordering so that it can correctly update its fallbacks. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'src')
-rw-r--r--src/cairo-surface.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/cairo-surface.c b/src/cairo-surface.c
index 6851ca92..c325c8ab 100644
--- a/src/cairo-surface.c
+++ b/src/cairo-surface.c
@@ -328,12 +328,12 @@ _cairo_surface_detach_snapshot (cairo_surface_t *snapshot)
{
assert (snapshot->snapshot_of != NULL);
- if (snapshot->snapshot_detach != NULL)
- snapshot->snapshot_detach (snapshot);
-
snapshot->snapshot_of = NULL;
cairo_list_del (&snapshot->snapshot);
+ if (snapshot->snapshot_detach != NULL)
+ snapshot->snapshot_detach (snapshot);
+
cairo_surface_destroy (snapshot);
}