diff options
Diffstat (limited to 'src/effects/SkMatrixConvolutionImageFilter.cpp')
-rw-r--r-- | src/effects/SkMatrixConvolutionImageFilter.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/effects/SkMatrixConvolutionImageFilter.cpp b/src/effects/SkMatrixConvolutionImageFilter.cpp index 2c695e7685..2119a8b108 100644 --- a/src/effects/SkMatrixConvolutionImageFilter.cpp +++ b/src/effects/SkMatrixConvolutionImageFilter.cpp @@ -452,12 +452,12 @@ SkIRect SkMatrixConvolutionImageFilter::onFilterNodeBounds(const SkIRect& src, c SkIRect dst = src; int w = fKernelSize.width() - 1, h = fKernelSize.height() - 1; - dst.fRight = Sk32_sat_add(dst.fRight, w); - dst.fBottom = Sk32_sat_add(dst.fBottom, h); + if (kReverse_MapDirection == dir) { - dst.offset(-fKernelOffset); + dst.adjust(-fKernelOffset.fX, -fKernelOffset.fY, + w - fKernelOffset.fX, h - fKernelOffset.fY); } else { - dst.offset(fKernelOffset - SkIPoint::Make(w, h)); + dst.adjust(fKernelOffset.fX - w, fKernelOffset.fY - h, fKernelOffset.fX, fKernelOffset.fY); } return dst; } |