Index: src/effects/SkDropShadowImageFilter.cpp |
diff --git a/src/effects/SkDropShadowImageFilter.cpp b/src/effects/SkDropShadowImageFilter.cpp |
index 31c45082b23520ee069a7a98aa534356fb883d7c..5befe711942746819abd8ce579ec9a540fdd67b2 100644 |
--- a/src/effects/SkDropShadowImageFilter.cpp |
+++ b/src/effects/SkDropShadowImageFilter.cpp |
@@ -139,8 +139,9 @@ SkIRect SkDropShadowImageFilter::onFilterNodeBounds(const SkIRect& src, const Sk |
SkScalarCeilToInt(offsetVec.y())); |
SkVector sigma = SkVector::Make(fSigmaX, fSigmaY); |
ctm.mapVectors(&sigma, 1); |
- dst.outset(SkScalarCeilToInt(SkScalarMul(sigma.x(), SkIntToScalar(3))), |
- SkScalarCeilToInt(SkScalarMul(sigma.y(), SkIntToScalar(3)))); |
+ dst.outset( |
+ SkScalarCeilToInt(SkScalarAbs(SkScalarMul(sigma.x(), SkIntToScalar(3)))), |
Stephen White
2016/07/12 16:25:23
There's probably a similar bug in SkDSIF::computeF
|
+ SkScalarCeilToInt(SkScalarAbs(SkScalarMul(sigma.y(), SkIntToScalar(3))))); |
if (fShadowMode == kDrawShadowAndForeground_ShadowMode) { |
dst.join(src); |
} |