Index: src/effects/SkDropShadowImageFilter.cpp |
diff --git a/src/effects/SkDropShadowImageFilter.cpp b/src/effects/SkDropShadowImageFilter.cpp |
index 29d685becccb7b286ec3575a1858eaf69f6b4ad8..f1ebae8d97de2493f458c7399b145348bc7eac1b 100644 |
--- a/src/effects/SkDropShadowImageFilter.cpp |
+++ b/src/effects/SkDropShadowImageFilter.cpp |
@@ -121,6 +121,9 @@ |
bool SkDropShadowImageFilter::onFilterBounds(const SkIRect& src, const SkMatrix& ctm, |
SkIRect* dst) const { |
SkIRect bounds = src; |
+ if (getInput(0) && !getInput(0)->filterBounds(src, ctm, &bounds)) { |
+ return false; |
+ } |
SkVector offsetVec = SkVector::Make(fDx, fDy); |
ctm.mapVectors(&offsetVec, 1); |
bounds.offset(-SkScalarCeilToInt(offsetVec.x()), |
@@ -130,9 +133,6 @@ |
bounds.outset(SkScalarCeilToInt(SkScalarMul(sigma.x(), SkIntToScalar(3))), |
SkScalarCeilToInt(SkScalarMul(sigma.y(), SkIntToScalar(3)))); |
bounds.join(src); |
- if (getInput(0) && !getInput(0)->filterBounds(bounds, ctm, &bounds)) { |
- return false; |
- } |
*dst = bounds; |
return true; |
} |