Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mm2/Little-CMS.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarti Maria <marti.maria@littlecms.com>2022-08-15 11:12:16 +0300
committerMarti Maria <marti.maria@littlecms.com>2022-08-15 11:12:16 +0300
commitebf575d837b0715e09277b693f83961143dbc48c (patch)
treeba38cc6e77c237ea77d27b877114a3d484c8e470
parent959064542d2ea82f97bb409dda4df471efc53feb (diff)
prevent a division by zero
on a ill-formed parametric curve
-rw-r--r--src/cmsgamma.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/cmsgamma.c b/src/cmsgamma.c
index 0b02bd4..94c0aef 100644
--- a/src/cmsgamma.c
+++ b/src/cmsgamma.c
@@ -462,7 +462,8 @@ cmsFloat64Number DefaultEvalParametricFn(cmsInt32Number Type, const cmsFloat64Nu
// X=-b/a | (Y<c)
case -3:
{
- if (fabs(Params[1]) < MATRIX_DET_TOLERANCE)
+ if (fabs(Params[0]) < MATRIX_DET_TOLERANCE ||
+ fabs(Params[1]) < MATRIX_DET_TOLERANCE)
{
Val = 0;
}
@@ -601,7 +602,8 @@ cmsFloat64Number DefaultEvalParametricFn(cmsInt32Number Type, const cmsFloat64Nu
// ((Y - c) ^1/Gamma - b) / a
case -6:
{
- if (fabs(Params[1]) < MATRIX_DET_TOLERANCE)
+ if (fabs(Params[0]) < MATRIX_DET_TOLERANCE ||
+ fabs(Params[1]) < MATRIX_DET_TOLERANCE)
{
Val = 0;
}