Do init efreet before using efreet_*() functions
authorenglebass <englebass@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Mon, 7 Feb 2011 21:33:11 +0000 (21:33 +0000)
committerenglebass <englebass@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Mon, 7 Feb 2011 21:33:11 +0000 (21:33 +0000)
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/efreet@56785 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

ChangeLog
src/bin/efreet_desktop_cache_create.c
src/bin/efreet_icon_cache_create.c

index 7b98418..7a49176 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -52,3 +52,4 @@
 2011-02-07  Sebastian Dransfeld
 
        * Don't create cache dir several times
+       * Do efreet_init before using efreet_*() functions
index 8b8b9f6..e0e51f1 100644 (file)
@@ -230,6 +230,8 @@ main(int argc, char **argv)
     if (!ecore_init()) goto ecore_error;
 
     efreet_cache_update = 0;
+    /* finish efreet init */
+    if (!efreet_init()) goto efreet_error;
 
     /* create homedir */
     snprintf(file, sizeof(file), "%s/efreet", efreet_cache_home_get());
@@ -250,9 +252,6 @@ main(int argc, char **argv)
         }
         goto efreet_error;
     }
-
-    /* finish efreet init */
-    if (!efreet_init()) goto efreet_error;
     edd = efreet_desktop_edd();
     if (!edd) goto edd_error;
 
index b840a2e..cfa1818 100644 (file)
@@ -717,18 +717,19 @@ main(int argc, char **argv)
     if (!ecore_init()) return -1;
 
     efreet_cache_update = 0;
+    /* finish efreet init */
+    if (!efreet_init()) goto on_error;
+
     strs = eina_array_new(32);
 
     /* create homedir */
     snprintf(file, sizeof(file), "%s/efreet", efreet_cache_home_get());
-    if (!ecore_file_mkpath(file)) return -1;
+    if (!ecore_file_mkpath(file)) goto on_error;
 
     /* lock process, so that we only run one copy of this program */
     lockfd = cache_lock_file();
-    if (lockfd == -1) return -1;
+    if (lockfd == -1) goto on_error;
 
-    /* finish efreet init */
-    if (!efreet_init()) goto on_error;
     /* Need to init edd's, so they are like we want, not like userspace wants */
     icon_edd = efreet_icon_edd();
     fallback_edd = efreet_icon_fallback_edd();
@@ -980,7 +981,7 @@ on_error_efreet:
     efreet_shutdown();
 
 on_error:
-    close(lockfd);
+    if (lockfd > 0) close(lockfd);
 
     while ((path = eina_array_pop(strs)))
         eina_stringshare_del(path);