diff --git a/src/pathops/SkOpAngle.cpp b/src/pathops/SkOpAngle.cpp index ae2b793e98..d89706aab9 100644 --- a/src/pathops/SkOpAngle.cpp +++ b/src/pathops/SkOpAngle.cpp @@ -577,7 +577,7 @@ bool SkOpAngle::endsIntersect(SkOpAngle* rh) { maxY = SkTMax(maxY, curve[idx2].fY); } double maxWidth = SkTMax(maxX - minX, maxY - minY); - delta /= maxWidth; + delta = sk_ieee_double_divide(delta, maxWidth); if (delta > 1e-3 && (useIntersect ^= true)) { // FIXME: move this magic number sRayLonger = rayLonger; sCept = cept; diff --git a/src/pathops/SkPathOpsConic.cpp b/src/pathops/SkPathOpsConic.cpp index 1cc543167d..e1940a0d6a 100644 --- a/src/pathops/SkPathOpsConic.cpp +++ b/src/pathops/SkPathOpsConic.cpp @@ -94,8 +94,8 @@ SkDPoint SkDConic::ptAtT(double t) const { } double denominator = conic_eval_denominator(fWeight, t); SkDPoint result = { - conic_eval_numerator(&fPts[0].fX, fWeight, t) / denominator, - conic_eval_numerator(&fPts[0].fY, fWeight, t) / denominator + sk_ieee_double_divide(conic_eval_numerator(&fPts[0].fX, fWeight, t), denominator), + sk_ieee_double_divide(conic_eval_numerator(&fPts[0].fY, fWeight, t), denominator) }; return result; }