From 7af0b61a94979bce4a19d62029b4758584dbbce2 Mon Sep 17 00:00:00 2001 From: kiirala Date: Wed, 13 Jun 2007 14:56:06 +0000 Subject: [PATCH] Fixed a rendering problem in feOffset --- src/display/nr-filter-offset.cpp | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/display/nr-filter-offset.cpp b/src/display/nr-filter-offset.cpp index ee6741d20..3b9c051e2 100644 --- a/src/display/nr-filter-offset.cpp +++ b/src/display/nr-filter-offset.cpp @@ -72,10 +72,17 @@ void FilterOffset::area_enlarge(NRRectL &area, Matrix const &trans) offset[X] -= trans[4]; offset[Y] -= trans[5]; - area.x0 -= static_cast(offset[X]); - area.x1 -= static_cast(offset[X]); - area.y0 -= static_cast(offset[Y]); - area.y1 -= static_cast(offset[Y]); + if (offset[X] > 0) { + area.x0 -= static_cast(offset[X]); + } else { + area.x1 -= static_cast(offset[X]); + } + + if (offset[Y] > 0) { + area.y0 -= static_cast(offset[Y]); + } else { + area.y1 -= static_cast(offset[Y]); + } } } /* namespace NR */ -- 2.30.2