summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarti Maria <marti.maria@littlecms.com>2022-08-22 14:25:43 +0200
committerMarti Maria <marti.maria@littlecms.com>2022-08-22 14:25:43 +0200
commit00a657c335e1452baeb7eed26c0988a5d2bd75f6 (patch)
treec81c8946c2da9d169bb183a88416b7ba88825e79
parent4e97dbac6a6af43d4ddea4c5b5bb24737725b874 (diff)
downloadlcms2-00a657c335e1452baeb7eed26c0988a5d2bd75f6.tar.gz
Fix for #333
a crafted CGAT may induce a crash. Add more validation Fixes #333
-rw-r--r--src/cmscgats.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/cmscgats.c b/src/cmscgats.c
index 72958a8..1b96456 100644
--- a/src/cmscgats.c
+++ b/src/cmscgats.c
@@ -392,14 +392,17 @@ void StringAppend(string* s, char c)
s->max *= 10;
new_ptr = (char*) AllocChunk(s->it8, s->max);
- if (new_ptr != NULL)
+ if (new_ptr != NULL && s->begin != NULL)
memcpy(new_ptr, s->begin, s->len);
s->begin = new_ptr;
}
- s->begin[s->len++] = c;
- s->begin[s->len] = 0;
+ if (s->begin != NULL)
+ {
+ s->begin[s->len++] = c;
+ s->begin[s->len] = 0;
+ }
}
static