diff options
author | Marti Maria <info@littlecms.com> | 2010-03-23 17:21:18 +0100 |
---|---|---|
committer | Marti Maria <info@littlecms.com> | 2010-03-23 17:21:18 +0100 |
commit | 46d9744fc89bafda47369be73ce6b11be29dc500 (patch) | |
tree | a23eb221ec3cc165af7fc370544f55fc662e508b /src | |
parent | 2474573db56ab3c6d4589a7c741bbd93b9ba9b05 (diff) | |
download | lcms2-46d9744fc89bafda47369be73ce6b11be29dc500.tar.gz |
Added some extra checks to return codes
Diffstat (limited to 'src')
-rw-r--r-- | src/cmscgats.c | 10 | ||||
-rw-r--r-- | src/cmsopt.c | 4 |
2 files changed, 12 insertions, 2 deletions
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++) { |