Index: src/effects/SkBlurImageFilter.cpp |
diff --git a/src/effects/SkBlurImageFilter.cpp b/src/effects/SkBlurImageFilter.cpp |
index a1d6a2f80e0753eea2cfd63cfbe7a816f10c0b18..6ba9e0b640fcb11a7e133b06fa4c1567cec49f78 100644 |
--- a/src/effects/SkBlurImageFilter.cpp |
+++ b/src/effects/SkBlurImageFilter.cpp |
@@ -82,8 +82,10 @@ bool SkBlurImageFilter::onFilterImage(Proxy* proxy, |
return false; |
} |
- SkIRect srcBounds, dstBounds; |
- if (!this->applyCropRect(this->mapContext(ctx), src, srcOffset, &dstBounds, &srcBounds)) { |
+ SkIRect srcBounds = src.bounds(); |
+ srcBounds.offset(srcOffset); |
+ SkIRect dstBounds; |
+ if (!this->applyCropRect(this->mapContext(ctx), srcBounds, &dstBounds)) { |
return false; |
} |
if (!srcBounds.intersect(dstBounds)) { |
@@ -204,8 +206,10 @@ bool SkBlurImageFilter::filterImageGPU(Proxy* proxy, const SkBitmap& src, const |
if (!this->filterInputGPU(0, proxy, src, ctx, &input, &srcOffset)) { |
return false; |
} |
- SkIRect srcBounds, dstBounds; |
- if (!this->applyCropRect(this->mapContext(ctx), input, srcOffset, &dstBounds, &srcBounds)) { |
+ SkIRect srcBounds = input.bounds(); |
+ srcBounds.offset(srcOffset); |
+ SkIRect dstBounds; |
+ if (!this->applyCropRect(this->mapContext(ctx), srcBounds, &dstBounds)) { |
return false; |
} |
if (!srcBounds.intersect(dstBounds)) { |