summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMarti Maria <marti.maria@littlecms.com>2023-01-10 17:43:11 +0100
committerMarti Maria <marti.maria@littlecms.com>2023-01-10 17:43:11 +0100
commite71aeb6d8ad21ad5aea2240b531acf13853c8cd9 (patch)
tree19198b3bae8e66c977beb30389ce0f54f1dd68df /src
parent3939d5cafea26bb40de23c3c727bcd807dd817df (diff)
downloadlcms2-e71aeb6d8ad21ad5aea2240b531acf13853c8cd9.tar.gz
save cgats to memory was wrong for one byte
The ending zero was not properly counted. Fixed.
Diffstat (limited to 'src')
-rw-r--r--src/cmscgats.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/cmscgats.c b/src/cmscgats.c
index 845c18a..c1a3f1f 100644
--- a/src/cmscgats.c
+++ b/src/cmscgats.c
@@ -1939,13 +1939,15 @@ cmsBool CMSEXPORT cmsIT8SaveToMem(cmsHANDLE hIT8, void *MemPtr, cmsUInt32Number*
memset(&sd, 0, sizeof(sd));
sd.stream = NULL;
- sd.Base = (cmsUInt8Number*) MemPtr;
+ sd.Base = (cmsUInt8Number*) MemPtr;
sd.Ptr = sd.Base;
sd.Used = 0;
- if (sd.Base)
- sd.Max = *BytesNeeded; // Write to memory?
+ if (sd.Base && (*BytesNeeded > 0)) {
+
+ sd.Max = (*BytesNeeded) - 1; // Write to memory?
+ }
else
sd.Max = 0; // Just counting the needed bytes