aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--expectations/gm/ignored-tests.txt5
-rw-r--r--src/effects/SkOffsetImageFilter.cpp7
2 files changed, 9 insertions, 3 deletions
diff --git a/expectations/gm/ignored-tests.txt b/expectations/gm/ignored-tests.txt
index 250dc61daa..4a177f166e 100644
--- a/expectations/gm/ignored-tests.txt
+++ b/expectations/gm/ignored-tests.txt
@@ -50,3 +50,8 @@ rrect_clip_aa
# I will likely just delete the GM.
canvas-layer-state
+# Fixes correctness for offsetimagefilter; slight pixel diffs for imagefiltersclipped.
+# https://codereview.chromium.org/195163004
+# senorblanco will rebaseline.
+offsetimagefilter
+imagefiltersclipped
diff --git a/src/effects/SkOffsetImageFilter.cpp b/src/effects/SkOffsetImageFilter.cpp
index 6322a5a9b3..12c5af6649 100644
--- a/src/effects/SkOffsetImageFilter.cpp
+++ b/src/effects/SkOffsetImageFilter.cpp
@@ -84,9 +84,10 @@ bool SkOffsetImageFilter::onFilterBounds(const SkIRect& src, const SkMatrix& ctm
SkVector vec;
ctm.mapVectors(&vec, &fOffset, 1);
- *dst = src;
- dst->offset(-SkScalarCeilToInt(vec.fX), -SkScalarCeilToInt(vec.fY));
- dst->join(src);
+ SkIRect bounds = src;
+ bounds.offset(-SkScalarCeilToInt(vec.fX), -SkScalarCeilToInt(vec.fY));
+ bounds.join(src);
+ *dst = bounds;
return true;
}