Index: src/effects/SkMatrixConvolutionImageFilter.cpp |
diff --git a/src/effects/SkMatrixConvolutionImageFilter.cpp b/src/effects/SkMatrixConvolutionImageFilter.cpp |
index 878cbae795ea1d218ab2a74811cdba69eda04a9c..3c9fc87787799611e07e657708e6c0b3ee6de447 100644 |
--- a/src/effects/SkMatrixConvolutionImageFilter.cpp |
+++ b/src/effects/SkMatrixConvolutionImageFilter.cpp |
@@ -306,6 +306,19 @@ bool SkMatrixConvolutionImageFilter::onFilterImage(Proxy* proxy, |
return true; |
} |
+bool SkMatrixConvolutionImageFilter::onFilterBounds(const SkIRect& src, const SkMatrix& ctm, |
+ SkIRect* dst) const { |
+ SkIRect bounds = src; |
+ bounds.fRight += fKernelSize.width() - 1; |
+ bounds.fBottom += fKernelSize.height() - 1; |
+ bounds.offset(-fKernelOffset); |
+ if (getInput(0) && !getInput(0)->filterBounds(bounds, ctm, &bounds)) { |
+ return false; |
+ } |
+ *dst = bounds; |
+ return true; |
+} |
+ |
#if SK_SUPPORT_GPU |
/////////////////////////////////////////////////////////////////////////////// |