| Index: Source/core/platform/graphics/filters/FEMorphology.cpp | 
| diff --git a/Source/core/platform/graphics/filters/FEMorphology.cpp b/Source/core/platform/graphics/filters/FEMorphology.cpp | 
| index 1bc31aecc91fb89422b173bf857638c58eccb022..9d514fb1174dca24ea556ace51d26329c30c6005 100644 | 
| --- a/Source/core/platform/graphics/filters/FEMorphology.cpp | 
| +++ b/Source/core/platform/graphics/filters/FEMorphology.cpp | 
| @@ -89,10 +89,7 @@ float FEMorphology::radiusY() const | 
|  | 
| void FEMorphology::determineAbsolutePaintRect() | 
| { | 
| -    FloatRect paintRect = inputEffect(0)->absolutePaintRect(); | 
| -    Filter* filter = this->filter(); | 
| -    paintRect.inflateX(filter->applyHorizontalScale(m_radiusX)); | 
| -    paintRect.inflateY(filter->applyVerticalScale(m_radiusY)); | 
| +    FloatRect paintRect = mapRect(inputEffect(0)->absolutePaintRect()); | 
| if (clipsToBounds()) | 
| paintRect.intersect(maxEffectRect()); | 
| else | 
| @@ -100,6 +97,14 @@ void FEMorphology::determineAbsolutePaintRect() | 
| setAbsolutePaintRect(enclosingIntRect(paintRect)); | 
| } | 
|  | 
| +FloatRect FEMorphology::mapRect(const FloatRect& rect, bool) | 
| +{ | 
| +    FloatRect result = rect; | 
| +    result.inflateX(filter()->applyHorizontalScale(m_radiusX)); | 
| +    result.inflateY(filter()->applyVerticalScale(m_radiusY)); | 
| +    return result; | 
| +} | 
| + | 
| bool FEMorphology::setRadiusY(float radiusY) | 
| { | 
| if (m_radiusY == radiusY) | 
|  |