Enlightenment CVS committal Author : dj2 Project : e17 Module : libs/efreet
Dir : e17/libs/efreet/src/lib Modified Files: efreet_icon.c Log Message: - guard the efreet_icon init/shutdown methods as efreet_mime is calling it internally =================================================================== RCS file: /cvs/e/e17/libs/efreet/src/lib/efreet_icon.c,v retrieving revision 1.23 retrieving revision 1.24 diff -u -3 -r1.23 -r1.24 --- efreet_icon.c 17 Jul 2007 19:21:20 -0000 1.23 +++ efreet_icon.c 19 Jul 2007 14:54:51 -0000 1.24 @@ -11,6 +11,8 @@ Ecore_List *efreet_icon_extensions = NULL; static Ecore_List *efreet_extra_icon_dirs = NULL; +static int efreet_icon_init_count = 0; + static char *efreet_icon_remove_extension(const char *icon); static Efreet_Icon_Theme *efreet_icon_find_theme_check(const char *theme_name); @@ -89,12 +91,19 @@ int efreet_icon_init(void) { + if (efreet_icon_init_count++ > 0) + return efreet_icon_init_count; + if (!efreet_icon_themes) { const char *default_exts[] = {".png", ".xpm", NULL}; int i; - if (!ecore_init()) return 0; + if (!ecore_init()) + { + efreet_icon_init_count--; + return 0; + } /* setup the default extension list */ efreet_icon_extensions = ecore_list_new(); @@ -120,6 +129,9 @@ void efreet_icon_shutdown(void) { + if (--efreet_icon_init_count) + return; + IF_FREE(efreet_icon_user_dir); IF_FREE(efreet_icon_deprecated_user_dir); @@ -129,6 +141,7 @@ IF_FREE_LIST(efreet_extra_icon_dirs); ecore_shutdown(); + efreet_icon_init_count = 0; } /** ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft Visual Studio 2005. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs