diff options
Diffstat (limited to 'src/pathops')
-rw-r--r-- | src/pathops/SkPathOpsTypes.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/pathops/SkPathOpsTypes.cpp b/src/pathops/SkPathOpsTypes.cpp index bddfd7e508..df46c2039e 100644 --- a/src/pathops/SkPathOpsTypes.cpp +++ b/src/pathops/SkPathOpsTypes.cpp @@ -120,7 +120,10 @@ bool AlmostDequalUlps(float a, float b) { } bool AlmostDequalUlps(double a, double b) { - return AlmostDequalUlps(SkDoubleToScalar(a), SkDoubleToScalar(b)); + if (fabs(a) < SK_ScalarMax && fabs(b) < SK_ScalarMax) { + return AlmostDequalUlps(SkDoubleToScalar(a), SkDoubleToScalar(b)); + } + return fabs(a - b) / SkTMax(fabs(a), fabs(b)) < FLT_EPSILON * 16; } bool AlmostEqualUlps(float a, float b) { |