From 46d9744fc89bafda47369be73ce6b11be29dc500 Mon Sep 17 00:00:00 2001 From: Marti Maria Date: Tue, 23 Mar 2010 17:21:18 +0100 Subject: Added some extra checks to return codes --- src/cmscgats.c | 10 ++++++++-- src/cmsopt.c | 4 ++++ 2 files changed, 12 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/cmscgats.c b/src/cmscgats.c index 31c55f9..f1dcfe7 100644 --- a/src/cmscgats.c +++ b/src/cmscgats.c @@ -2149,7 +2149,9 @@ cmsBool IsMyFile(const char* FileName) } Size = (cmsUInt32Number) fread(Ptr, 1, 132, fp); - fclose(fp); + + if (fclose(fp) != 0) + return FALSE; Ptr[Size] = '\0'; @@ -2239,7 +2241,11 @@ cmsHANDLE CMSEXPORT cmsIT8LoadFromFile(cmsContext ContextID, const char* cFileN CookPointers(it8); it8 ->nTable = 0; - fclose(it8 ->FileStack[0]->Stream); + if (fclose(it8 ->FileStack[0]->Stream)!= 0) { + cmsIT8Free(hIT8); + return NULL; + } + return hIT8; } diff --git a/src/cmsopt.c b/src/cmsopt.c index 4e97197..7fd44fd 100644 --- a/src/cmsopt.c +++ b/src/cmsopt.c @@ -253,6 +253,8 @@ void* Prelin16dup(cmsContext ContextID, const void* ptr) Prelin16Data* p16 = (Prelin16Data*) ptr; Prelin16Data* Duped = _cmsDupMem(ContextID, p16, sizeof(Prelin16Data)); + if (Duped == NULL) return NULL; + Duped ->StageDEF = _cmsCalloc(ContextID, p16 ->nOutputs, sizeof(cmsUInt16Number)); Duped ->EvalCurveOut16 = _cmsDupMem(ContextID, p16 ->EvalCurveOut16, p16 ->nOutputs * sizeof(_cmsInterpFn16)); Duped ->ParamsCurveOut16 = _cmsDupMem(ContextID, p16 ->ParamsCurveOut16, p16 ->nOutputs * sizeof(cmsInterpParams* )); @@ -1082,6 +1084,8 @@ void* CurvesDup(cmsContext ContextID, const void* ptr) Curves16Data* Data = _cmsDupMem(ContextID, ptr, sizeof(Curves16Data)); int i; + if (Data == NULL) return NULL; + Data ->Curves = _cmsDupMem(ContextID, Data ->Curves, Data ->nCurves * sizeof(cmsUInt16Number*)); for (i=0; i < Data -> nCurves; i++) { -- cgit v1.2.1