Merge with EFL svn repo: changeset 51544: eet: more check cleans (bogus actually...
authorJoseph T <joseph.t@samsung.com>
Mon, 20 Sep 2010 20:59:29 +0000 (16:59 -0400)
committerJoseph T <joseph.t@samsung.com>
Mon, 20 Sep 2010 20:59:29 +0000 (16:59 -0400)
src/lib/eet_lib.c

index b736fc0..3fc2ac2 100644 (file)
@@ -958,9 +958,14 @@ eet_internal_read2(Eet_File *ef)
 
         /* out directory block is inconsistent - we have oveerun our */
         /* dynamic block buffer before we finished scanning dir entries */
-        efn = malloc (sizeof(Eet_File_Node));
+        efn = malloc(sizeof(Eet_File_Node));
         if (eet_test_close(!efn, ef))
-           return NULL;
+          {
+             if (efn) free(efn); /* yes i know - we only get here if 
+                                  * efn is null/0 -> trying to shut up
+                                  * warning tools like cppcheck */
+             return NULL;
+          }
 
         /* get entrie header */
         GET_INT(efn->offset,    data, idx);
@@ -1220,7 +1225,12 @@ eet_internal_read1(Eet_File *ef)
         /* allocate all the ram needed for this stored node accounting */
         efn = malloc (sizeof(Eet_File_Node));
         if (eet_test_close(!efn, ef))
-           return NULL;
+          {
+             if (efn) free(efn); /* yes i know - we only get here if 
+                                  * efn is null/0 -> trying to shut up
+                                  * warning tools like cppcheck */
+             return NULL;
+          }
 
         /* get entrie header */
         EXTRACT_INT(efn->offset,      p, indexn);