tighten check when we might overflow legacy shader math

Bug: skia:7700
Change-Id: I2ca06b7ba36f2e17d6addd31b1f67a07d478e207
Reviewed-on: https://skia-review.googlesource.com/113264
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
diff --git a/src/shaders/SkImageShader.cpp b/src/shaders/SkImageShader.cpp
index d42b417..a76edc0 100644
--- a/src/shaders/SkImageShader.cpp
+++ b/src/shaders/SkImageShader.cpp
@@ -86,8 +86,8 @@
     SkRect src;
     SkAssertResult(inv.mapRect(&src, SkRect::MakeWH(max_dev_coord, max_dev_coord)));
 
-    // take 1/2 of max signed 32bits so we have room to subtract coordinates
-    const SkScalar max_fixed32dot32 = SK_MaxS32 * 0.5f;
+    // take 1/4 of max signed 32bits so we have room to subtract local values
+    const SkScalar max_fixed32dot32 = SK_MaxS32 * 0.25f;
     if (!SkRect::MakeLTRB(-max_fixed32dot32, -max_fixed32dot32,
                            max_fixed32dot32, max_fixed32dot32).contains(src)) {
         return false;