diff options
-rw-r--r-- | src/cmssamp.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/cmssamp.c b/src/cmssamp.c index 463de69..f5957d1 100644 --- a/src/cmssamp.c +++ b/src/cmssamp.c @@ -323,6 +323,7 @@ cmsFloat64Number RootOfLeastSquaresFitQuadraticCurve(int n, cmsFloat64Number x[] if (fabs(a) < 1.0E-10) { + if (fabs(b) < 1.0E-10) return 0; return cmsmin(0, cmsmax(50, -c/b )); } else { @@ -333,7 +334,11 @@ cmsFloat64Number RootOfLeastSquaresFitQuadraticCurve(int n, cmsFloat64Number x[] } else { - double rt = (-b + sqrt(d)) / (2.0 * a); + double rt; + + if (fabs(a) < 1.0E-10) return 0; + + rt = (-b + sqrt(d)) / (2.0 * a); return cmsmax(0, cmsmin(50, rt)); } |