diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2013-02-12 10:11:12 +0000 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2013-02-12 10:11:12 +0000 |
commit | 14237f11439831377b59e8ea5717de5dd3e19e73 (patch) | |
tree | 7c8371bc8bef06b9793b1b9fc81ce1e8b7871a14 | |
parent | 7f3cca458a7546f913533f693b581325228aba4e (diff) |
spans: Mark the surface as cleared in preparing for recording surface playback
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
-rw-r--r-- | src/cairo-spans-compositor.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/cairo-spans-compositor.c b/src/cairo-spans-compositor.c index cb3e973d..6eb9b42a 100644 --- a/src/cairo-spans-compositor.c +++ b/src/cairo-spans-compositor.c @@ -589,11 +589,16 @@ composite_aligned_boxes (const cairo_spans_compositor_t *compositor, /* XXX could also do tiling repeat modes... */ /* first clear the area about to be overwritten */ - if (! dst->is_clear) + if (! dst->is_clear) { status = compositor->fill_boxes (dst, CAIRO_OPERATOR_CLEAR, CAIRO_COLOR_TRANSPARENT, boxes); + if (unlikely (status)) + return status; + + dst->is_clear = TRUE; + } recording_clip = _cairo_clip_from_boxes (boxes); status = _cairo_recording_surface_replay_with_clip (unwrap_source (source), |