| Index: third_party/lcms2-2.6/src/cmsnamed.c
|
| diff --git a/third_party/lcms2-2.6/src/cmsnamed.c b/third_party/lcms2-2.6/src/cmsnamed.c
|
| index acfd1c8cf93a1a8b4ca6bd20cda455b76a72a7c1..ef1eb3089ecc7ba5af4134e458dbdf88e1df7b2d 100644
|
| --- a/third_party/lcms2-2.6/src/cmsnamed.c
|
| +++ b/third_party/lcms2-2.6/src/cmsnamed.c
|
| @@ -514,8 +514,12 @@ cmsNAMEDCOLORLIST* CMSEXPORT cmsAllocNamedColorList(cmsContext ContextID, cmsUIn
|
| v ->nColors = 0;
|
| v ->ContextID = ContextID;
|
|
|
| - while (v -> Allocated < n)
|
| - GrowNamedColorList(v);
|
| + while (v -> Allocated < n) {
|
| + if (!GrowNamedColorList(v)) {
|
| + cmsFreeNamedColorList(v);
|
| + return NULL;
|
| + }
|
| + }
|
|
|
| strncpy(v ->Prefix, Prefix, sizeof(v ->Prefix)-1);
|
| strncpy(v ->Suffix, Suffix, sizeof(v ->Suffix)-1);
|
| @@ -544,8 +548,12 @@ cmsNAMEDCOLORLIST* CMSEXPORT cmsDupNamedColorList(const cmsNAMEDCOLORLIST* v)
|
| if (NewNC == NULL) return NULL;
|
|
|
| // For really large tables we need this
|
| - while (NewNC ->Allocated < v ->Allocated)
|
| - GrowNamedColorList(NewNC);
|
| + while (NewNC ->Allocated < v ->Allocated) {
|
| + if (!GrowNamedColorList(NewNC)) {
|
| + cmsFreeNamedColorList(NewNC);
|
| + return NULL;
|
| + }
|
| + }
|
|
|
| memmove(NewNC ->Prefix, v ->Prefix, sizeof(v ->Prefix));
|
| memmove(NewNC ->Suffix, v ->Suffix, sizeof(v ->Suffix));
|
|
|