Enlightenment CVS committal

Author  : dj2
Project : e17
Module  : libs/efreet

Dir     : e17/libs/efreet/src/lib


Modified Files:
        efreet_mime.c 


Log Message:
- formatting
- simplify a couple routines
- make the magic loading not loop infinitly on big endian

===================================================================
RCS file: /cvs/e/e17/libs/efreet/src/lib/efreet_mime.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -3 -r1.2 -r1.3
--- efreet_mime.c       1 Jul 2007 16:32:34 -0000       1.2
+++ efreet_mime.c       2 Jul 2007 20:08:35 -0000       1.3
@@ -17,9 +17,9 @@
  */
 static enum 
 { 
-    BIG = 0, 
-    LITTLE = 1 
-} efreet_mime_endianess = BIG;        
+    EFREET_ENDIAN_BIG = 0, 
+    EFREET_ENDIAN_LITTLE = 1 
+} efreet_mime_endianess = EFREET_ENDIAN_BIG;
 
 
 /*
@@ -103,8 +103,6 @@
 int
 efreet_mime_init(void)
 {            
-    Efreet_Mime_Monitor *mm = NULL;
-
     if (!ecore_init())
         return 0;
     
@@ -118,18 +116,10 @@
     
     monitors = ecore_list_new();
     ecore_list_set_free_cb(monitors, efreet_mime_monitor_free);
-    
+
     if (!efreet_mime_init_files())
         return 0;
     
-    /* Can be used to debug monitors*/
-    if (monitors)
-    {
-        ecore_list_goto_first(monitors);
-        while ((mm = ecore_list_next(monitors)))
-            printf("Watching: %s\n", mm->file);
-    }
-    
     return 1;
 }
 
@@ -168,8 +158,8 @@
   
     if (methods & EFREET_MIME_FLAG_MAGIC)
     {
-      if ((type = efreet_mime_magic_check_priority(file, 0, 80)))
-          return type;
+        if ((type = efreet_mime_magic_check_priority(file, 0, 80)))
+            return type;
     }
     
     if ((methods & EFREET_MIME_FLAG_GLOB) 
@@ -301,18 +291,15 @@
     IF_FREE_LIST(globs);
     globs = ecore_list_new();    
     ecore_list_set_free_cb(globs, efreet_mime_glob_free);
-    
+   
+    datadir = datahome
     ecore_list_goto_first(datadirs);
-    while ((datadir = ecore_list_next(datadirs)))
+    while (datadir)
     {
         snprintf(buf, sizeof(buf), "%s/mime/globs", datadir);
         efreet_mime_shared_mimeinfo_globs_load(buf);
-    }
-    
-    if (datahome && (datahome[0] != '\0'))
-    {
-        snprintf(buf, sizeof(buf), "%s/mime/globs", datahome);
-        efreet_mime_shared_mimeinfo_globs_load(buf);
+
+        datadir = ecore_list_next(datadirs);
     }
     
     /*
@@ -338,18 +325,15 @@
     IF_FREE_LIST(magics);
     magics = ecore_list_new();
     ecore_list_set_free_cb(magics, efreet_mime_magic_free);    
-    
+  
+    datadir = datahome;
     ecore_list_goto_first(datadirs);
-    while ((datadir = ecore_list_next(datadirs)))
+    while (datadir)
     {
         snprintf(buf, sizeof(buf), "%s/mime/magic", datadir);
         efreet_mime_shared_mimeinfo_magic_load(buf);
-    }
 
-    if (datahome && (datahome[0] != '\0'))
-    {    
-        snprintf(buf, sizeof(buf), "%s/mime/magic", datahome);
-        efreet_mime_shared_mimeinfo_magic_load(buf);
+        datadir = ecore_list_next(datadirs);
     }
 }
 
@@ -399,7 +383,7 @@
 {
     Ecore_List *datadirs = NULL; 
     char buf[PATH_MAX];
-    const char *datahome = NULL, *datadir = NULL;
+    const char *datahome, *datadir = NULL;
     
     if (!(datahome = efreet_data_home_get()))
         return 0;
@@ -409,24 +393,21 @@
     
     /* Add our file monitors */
     /* We watch the directories so we can watch for new files? */
+    datadir = datahome;
     ecore_list_goto_first(datadirs);
-    while ((datadir = ecore_list_next(datadirs)))
+    while (datadir)
     {
-        snprintf(buf,PATH_MAX,"%s/mime", datadir);
+        snprintf(buf, PATH_MAX, "%s/mime", datadir);
         efreet_mime_monitor_add(buf);
+
+        datadir = ecore_list_next(datadirs);
     }
-    
-    snprintf(buf,PATH_MAX,"%s/mime", datahome);
-    efreet_mime_monitor_add(buf);
-    
     efreet_mime_monitor_add("/etc/mime.types");
     
-    /*
-     * Load our mime information
-     */
+    /* Load our mime information */
     efreet_mime_load_globs(datadirs, datahome);
     efreet_mime_load_magics(datadirs, datahome);
-    
+
     return 1;
 }
 
@@ -691,14 +672,12 @@
 static int
 efreet_mime_count_digits(int in)
 {
-  int i = 1, j = in;
-  
-  if (j < 10)
-      return 1;
+    int i = 1, j = in;
   
-  while ((j /= 10) > 0) ++i;
+    if (j < 10) return 1;
+    while ((j /= 10) > 0) ++i;
     
-  return i;
+    return i;
 }
 
 /**
@@ -756,13 +735,15 @@
     
     /* Check for magic string.  Will also move us to first section */
     if (fread(buf, 1, 12, f))
-      if (memcmp(buf, "MIME-Magic\0\n", 12)) return;
+    {
+        if (memcmp(buf, "MIME-Magic\0\n", 12)) return;
+    }
       
     /* Begin reading in sections and mime data */
     while ((bytes_read = fread(buf, 1, sizeof(buf), f)))
-    {        
-        for (i=0; i < bytes_read;)
-        {        
+    {
+        for (i = 0; i < bytes_read;)
+        {
             if (buf[i] == '[')
             {
                 IF_FREE(entry);
@@ -826,7 +807,12 @@
                         break;
 
                     case VALUE:
-                        entry->value_len = ntohs(buf[i + 1] << 8 | 
(short)(buf[i]));
+
+                        if (efreet_mime_endianess == EFREET_ENDIAN_LITTLE)
+                            entry->value_len = ntohs(buf[i + 1] << 8 | 
(short)(buf[i]));
+                        else
+                            entry->value_len = ntohs((short)(buf[i + 1]) | 
buf[i] << 8);
+
                         i += 2;
 
                         entry->value = NEW(1, entry->value_len);        
@@ -856,7 +842,7 @@
                             break;
                         }
                         
-                        if (efreet_mime_endianess == LITTLE)
+                        if (efreet_mime_endianess == EFREET_ENDIAN_LITTLE)
                         {
                             int j;
                             for (j = 0; j < entry->value_len; j += 
entry->word_size)
@@ -930,7 +916,7 @@
             
             /* Create our new structure */
             if (buf[i] == '\n')
-            {                                    
+            {
                 if (entry) ecore_list_append(mime->entries, entry);
 
                 if (!(entry = NEW(Efreet_Mime_Magic_Entry, 1)))
@@ -1000,20 +986,21 @@
         {                    
             if ((level < e->indent) && !match)
                 continue;
+
             if ((level >= e->indent) && !match)
                 level = e->indent;
+
             else if ((level > e->indent) && match)
             {
                 fclose(f);
               
-                if (last_mime)
-                    return last_mime;
+                if (last_mime) return last_mime;
             }
             
             for (offset = e->offset; offset < e->offset+e->range_len; ++offset)
             {
                 if (((offset+e->value_len) > bytes_read) && 
-                    (fseek(f, offset, SEEK_SET) == -1))
+                        (fseek(f, offset, SEEK_SET) == -1))
                     break;
                 
                 match = 1;
@@ -1025,7 +1012,6 @@
                         c = buf[offset + i];
                     
                     v = e->value[i];
-                    
                     if (e->mask)
                         v &= e->mask[i];
 



-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to