From 533909ea7bb06d8f0658b7d448fa4283afd3f52f Mon Sep 17 00:00:00 2001 From: tavmjong Date: Sat, 20 Sep 2008 13:14:01 +0000 Subject: [PATCH] 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. --- src/extension/internal/cairo-renderer.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) 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(); -- 2.30.2