summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMarti Maria <marti.maria@littlecms.com>2023-01-03 11:24:47 +0100
committerMarti Maria <marti.maria@littlecms.com>2023-01-03 11:24:47 +0100
commit37eddd2d8787dbc5d707044cab0762bfc879fb3e (patch)
tree54337e1bfd4d47b86a76178605ee1bfb2ca6fc9d /src
parentef7bd0de652e2a3295026093225c7820611ee0c8 (diff)
downloadlcms2-37eddd2d8787dbc5d707044cab0762bfc879fb3e.tar.gz
sanitize cmsBuildTabulatedToneCurveFloat against bad API usage
sanitize cmsBuildTabulatedToneCurveFloat against bad API usage Fix for #351
Diffstat (limited to 'src')
-rw-r--r--src/cmscnvrt.c2
-rw-r--r--src/cmsgamma.c4
2 files changed, 5 insertions, 1 deletions
diff --git a/src/cmscnvrt.c b/src/cmscnvrt.c
index e8a51ae..bca5796 100644
--- a/src/cmscnvrt.c
+++ b/src/cmscnvrt.c
@@ -234,7 +234,7 @@ cmsFloat64Number CHAD2Temp(const cmsMAT3* Chad)
// Compute a CHAD based on a given temperature
static
- void Temp2CHAD(cmsMAT3* Chad, cmsFloat64Number Temp)
+void Temp2CHAD(cmsMAT3* Chad, cmsFloat64Number Temp)
{
cmsCIEXYZ White;
cmsCIExyY ChromaticityOfWhite;
diff --git a/src/cmsgamma.c b/src/cmsgamma.c
index 94c0aef..5abbf16 100644
--- a/src/cmsgamma.c
+++ b/src/cmsgamma.c
@@ -823,6 +823,10 @@ cmsToneCurve* CMSEXPORT cmsBuildTabulatedToneCurveFloat(cmsContext ContextID, cm
{
cmsCurveSegment Seg[3];
+ // Do some housekeeping
+ if (nEntries == 0 || values == NULL)
+ return NULL;
+
// A segmented tone curve should have function segments in the first and last positions
// Initialize segmented curve part up to 0 to constant value = samples[0]
Seg[0].x0 = MINUS_INF;