Enlightenment CVS committal

Author  : tsauerbeck
Project : e17
Module  : libs/eet

Dir     : e17/libs/eet/src/lib


Modified Files:
        eet_lib.c 


Log Message:
code cleanup
===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/eet/src/lib/eet_lib.c,v
retrieving revision 1.54
retrieving revision 1.55
diff -u -3 -r1.54 -r1.55
--- eet_lib.c   7 Nov 2005 06:16:26 -0000       1.54
+++ eet_lib.c   29 Nov 2005 11:44:51 -0000      1.55
@@ -783,7 +783,7 @@
 eet_read(Eet_File *ef, char *name, int *size_ret)
 {
    void *data = NULL;
-   int size = 0, tmp_size;
+   int size = 0;
    int hash;
    Eet_File_Node *efn;
    
@@ -844,66 +844,65 @@
             else
               {
                  void *tmp_data;
-                 int free_tmp = 0;
+                 int free_tmp = 0, compr_size = efn->size;
+                 uLongf dlen;
 
-                 /* get size of data in file */
-                 tmp_size = efn->size;
-                 if (!efn->data)
-                   {
-                      tmp_data = malloc(tmp_size);
-                      if (!tmp_data) break;
-                      free_tmp = 1;
-                   }
                  /* get size uncompressed */
                  size = efn->data_size;
                  /* allocate data */
                  data = malloc(size);
-                 if (data)
+                 if (!data) break;
+
+                 /* if we already have the data in ram... copy that */
+                 if (efn->data)
+                   tmp_data = efn->data;
+                 else
                    {
-                      uLongf dlen;
+                      tmp_data = malloc(compr_size);
+                      if (!tmp_data)
+                        {
+                           free(data);
+                           data = NULL;
+                           break;
+                        }
 
-                      /* if we already have the data in ram... copy that */
-                      if (efn->data)
-                        tmp_data = efn->data;
-                      /* or get data from disk */
-                      else
+                      free_tmp = 1;
+
+                      /* get data from disk */
+                      /* seek to data location */
+                      if (fseek(ef->fp, efn->offset, SEEK_SET) < 0)
                         {
-                           /* seek to data location */
-                           if (fseek(ef->fp, efn->offset, SEEK_SET) < 0)
-                             {
-                                free(tmp_data);
-                                free(data);
-                                data = NULL;
-                                break;
-                             }
-                           /* read it */
-                           if (fread(tmp_data, tmp_size, 1, ef->fp) != 1)
-                             {
-                                free(tmp_data);
-                                free(data);
-                                data = NULL;
-                                break;
-                             }
+                           free(tmp_data);
+                           free(data);
+                           data = NULL;
+                           break;
                         }
-                      /* decompress it */
-                      dlen = size;
-                      if (uncompress((Bytef *)data, &dlen,
-                                     tmp_data, (uLongf)tmp_size))
+                      /* read it */
+                      if (fread(tmp_data, compr_size, 1, ef->fp) != 1)
                         {
-                           if (free_tmp) free(tmp_data);
+                           free(tmp_data);
                            free(data);
                            data = NULL;
                            break;
                         }
                    }
+
+                 /* decompress it */
+                 dlen = size;
+                 if (uncompress((Bytef *)data, &dlen,
+                          tmp_data, (uLongf)compr_size))
+                   {
+                      free(data);
+                      data = NULL;
+                   }
+
                  if (free_tmp) free(tmp_data);
                  break;
               }
          }
      }
    /* fill in return values */
-   *size_ret = size;
-   /* update access time */
+   if (size_ret) *size_ret = size;
    return data;
 }
 




-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to