diff options
Diffstat (limited to 'src/cairo-surface.c')
-rw-r--r-- | src/cairo-surface.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/cairo-surface.c b/src/cairo-surface.c index 47cfe2a2..0f704e13 100644 --- a/src/cairo-surface.c +++ b/src/cairo-surface.c @@ -645,6 +645,8 @@ cairo_surface_finish (cairo_surface_t *surface) cairo_surface_flush (surface); + surface->finished = TRUE; + /* call finish even if in error mode */ if (surface->backend->finish) { status = surface->backend->finish (surface); @@ -652,8 +654,6 @@ cairo_surface_finish (cairo_surface_t *surface) status = _cairo_surface_set_error (surface, status); } - surface->finished = TRUE; - if (surface->snapshot_of != NULL) _cairo_surface_detach_snapshot (surface); } |