summaryrefslogtreecommitdiff
path: root/src/cairo-surface-wrapper.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2011-07-26 16:37:29 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2011-07-26 16:38:31 +0100
commitb492b69d4f6e4fba41558b1ca066203c4e88c856 (patch)
tree8b08534f7ef0651744aa034e7046dcb7600f539d /src/cairo-surface-wrapper.c
parent91faf9c1cf79f44b48c0f14d2d551a68bf38b5a5 (diff)
downloadcairo-b492b69d4f6e4fba41558b1ca066203c4e88c856.tar.gz
wrapper: translate the clip by the device transform
A stepping stone, the translation was accidentally dropped when changing the clipping to be performed first. Fixes twin. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'src/cairo-surface-wrapper.c')
-rw-r--r--src/cairo-surface-wrapper.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/cairo-surface-wrapper.c b/src/cairo-surface-wrapper.c
index d2fead83e..9ed562012 100644
--- a/src/cairo-surface-wrapper.c
+++ b/src/cairo-surface-wrapper.c
@@ -126,6 +126,12 @@ _cairo_surface_wrapper_get_clip (cairo_surface_wrapper_t *wrapper,
copy = _cairo_clip_translate (copy,
-wrapper->extents.x,
-wrapper->extents.y);
+ if (! _cairo_matrix_is_identity (&wrapper->target->device_transform)) {
+ /* XXX */
+ copy = _cairo_clip_translate (copy,
+ wrapper->target->device_transform.x0,
+ wrapper->target->device_transform.y0);
+ }
if (wrapper->clip)
copy = _cairo_clip_intersect_clip (copy, wrapper->clip);