summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMarti Maria <info@littlecms.com>2010-03-23 17:21:18 +0100
committerMarti Maria <info@littlecms.com>2010-03-23 17:21:18 +0100
commit46d9744fc89bafda47369be73ce6b11be29dc500 (patch)
treea23eb221ec3cc165af7fc370544f55fc662e508b /src
parent2474573db56ab3c6d4589a7c741bbd93b9ba9b05 (diff)
downloadlcms2-46d9744fc89bafda47369be73ce6b11be29dc500.tar.gz
Added some extra checks to return codes
Diffstat (limited to 'src')
-rw-r--r--src/cmscgats.c10
-rw-r--r--src/cmsopt.c4
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++) {