From 4a37da75c9e23e8fc9c886c33394f22cba3af497 Mon Sep 17 00:00:00 2001 From: Tavmjong Bah Date: Sat, 20 Sep 2008 13:14:01 +0000 Subject: Don't clip mask surface to mask bounding box. The mask bounding box is the geometric bounding box which dosn't allow for filters that can extend outside the box. Partial fix for bug 208217. (bzr r6853) --- src/extension/internal/cairo-renderer.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/extension/internal/cairo-renderer.cpp b/src/extension/internal/cairo-renderer.cpp index 25cbc14ad..2b74c6f7c 100644 --- a/src/extension/internal/cairo-renderer.cpp +++ b/src/extension/internal/cairo-renderer.cpp @@ -748,8 +748,10 @@ CairoRenderer::applyMask(CairoRenderContext *ctx, SPMask const *mask) ctx->setTransform(&t); } - // clip mask contents - ctx->addClippingRect(mask_bbox.x0, mask_bbox.y0, mask_bbox.x1 - mask_bbox.x0, mask_bbox.y1 - mask_bbox.y0); + // Clip mask contents... but... + // The mask's bounding box is the "geometric bounding box" which doesn't allow for + // filters which extend outside the bounding box. So don't clip. + // ctx->addClippingRect(mask_bbox.x0, mask_bbox.y0, mask_bbox.x1 - mask_bbox.x0, mask_bbox.y1 - mask_bbox.y0); ctx->pushState(); -- cgit v1.2.3