Does this fix things?

NOTREECHECKS=true
CQ_EXTRA_TRYBOTS=tryserver.skia:Test-Win7-ShuttleA-HD2000-x86-Debug-Trybot
BUG=skia:
R=mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/492343002
diff --git a/src/effects/gradients/SkGradientShader.cpp b/src/effects/gradients/SkGradientShader.cpp
index 502d733..c84e46a 100644
--- a/src/effects/gradients/SkGradientShader.cpp
+++ b/src/effects/gradients/SkGradientShader.cpp
@@ -161,10 +161,11 @@
                     curr = SkScalarPin(desc.fPos[i], 0, 1);
                 }
                 *origPosPtr++ = curr;
-                
+
                 recs->fPos = SkScalarToFixed(curr);
-                if (curr > prev) {
-                    recs->fScale = (1 << 24) / SkScalarToFixed(curr - prev);
+                SkFixed diff = SkScalarToFixed(curr - prev);
+                if (diff > 0) {
+                    recs->fScale = (1 << 24) / diff;
                 } else {
                     recs->fScale = 0; // ignore this segment
                 }