From 66b667f27338839e3226aa7e759312916e0cb223 Mon Sep 17 00:00:00 2001 From: Sebastian Dransfeld Date: Wed, 3 Mar 2010 22:10:55 +0000 Subject: [PATCH] Use efreet_desktop_new where appropriate efreet_desktop_get (will in time) setup a lot of stuff to monitor changes. If we just use the results from efreet_desktop_get within one function and then free, this is unneeded overhead. efreet_desktop_free will more lightweight (but require a bit more mem alloc). SVN revision: 46847 --- src/bin/e_int_config_modules.c | 2 +- src/bin/e_int_gadcon_config.c | 2 +- src/bin/e_module.c | 2 +- src/modules/conf_profiles/e_int_config_profiles.c | 8 ++++---- src/modules/wizard/page_020.c | 4 ++-- src/modules/wizard/page_070.c | 1 + 6 files changed, 10 insertions(+), 9 deletions(-) diff --git a/src/bin/e_int_config_modules.c b/src/bin/e_int_config_modules.c index 2e1ca84c5..b352edf30 100644 --- a/src/bin/e_int_config_modules.c +++ b/src/bin/e_int_config_modules.c @@ -294,7 +294,7 @@ _load_modules(const char *dir, Eina_Hash *types_hash) snprintf(modpath + modpathlen, sizeof(modpath) - modpathlen, "%s/module.desktop", mod); if (!ecore_file_exists(modpath)) goto end_mod; - if (!(desk = efreet_desktop_get(modpath))) goto end_mod; + if (!(desk = efreet_desktop_new(modpath))) goto end_mod; if (desk->x) type = eina_hash_find(desk->x, "X-Enlightenment-ModuleType"); diff --git a/src/bin/e_int_gadcon_config.c b/src/bin/e_int_gadcon_config.c index 36aada2a0..e712ee151 100644 --- a/src/bin/e_int_gadcon_config.c +++ b/src/bin/e_int_gadcon_config.c @@ -386,7 +386,7 @@ _set_description(void *data, const char *name) snprintf(buf, sizeof(buf), "%s/module.desktop", e_module_dir_get(mod)); if (!ecore_file_exists(buf)) return; - if (!(desk = efreet_desktop_get(buf))) return; + if (!(desk = efreet_desktop_new(buf))) return; if (desk->comment) e_widget_textblock_markup_set(cfdata->o_desc, desk->comment); efreet_desktop_free(desk); diff --git a/src/bin/e_module.c b/src/bin/e_module.c index 68b02a741..526ddabfd 100644 --- a/src/bin/e_module.c +++ b/src/bin/e_module.c @@ -379,7 +379,7 @@ e_module_dialog_show(E_Module *m, const char *title, const char *body) snprintf(buf, sizeof(buf), "%s/module.desktop", e_module_dir_get(m)); - desktop = efreet_desktop_get(buf); + desktop = efreet_desktop_new(buf); if ((desktop) && (desktop->icon)) { icon = efreet_icon_path_find(e_config->icon_theme, desktop->icon, 64); diff --git a/src/modules/conf_profiles/e_int_config_profiles.c b/src/modules/conf_profiles/e_int_config_profiles.c index c1363b68a..9bc64805b 100644 --- a/src/modules/conf_profiles/e_int_config_profiles.c +++ b/src/modules/conf_profiles/e_int_config_profiles.c @@ -191,7 +191,7 @@ _ilist_fill(E_Config_Dialog_Data *cfdata) } pdir = e_config_profile_dir_get(prof); snprintf(buf, sizeof(buf), "%s/profile.desktop", pdir); - desk = efreet_desktop_get(buf); + desk = efreet_desktop_new(buf); if (!desk) { e_prefix_data_snprintf(buf, sizeof(buf), "data/config/%s/", prof); @@ -199,7 +199,7 @@ _ilist_fill(E_Config_Dialog_Data *cfdata) if (pdir) { snprintf(buf, sizeof(buf), "%s/profile.desktop", pdir); - desk = efreet_desktop_get(buf); + desk = efreet_desktop_new(buf); } } label = prof; @@ -249,7 +249,7 @@ _ilist_cb_selected(void *data) pdir = e_config_profile_dir_get(cfdata->sel_profile); snprintf(buf, sizeof(buf), "%s/profile.desktop", pdir); - desk = efreet_desktop_get(buf); + desk = efreet_desktop_new(buf); if (!desk) { e_prefix_data_snprintf(buf, sizeof(buf), "data/config/%s/", cfdata->sel_profile); @@ -257,7 +257,7 @@ _ilist_cb_selected(void *data) if (pdir) { snprintf(buf, sizeof(buf), "%s/profile.desktop", pdir); - desk = efreet_desktop_get(buf); + desk = efreet_desktop_new(buf); } } diff --git a/src/modules/wizard/page_020.c b/src/modules/wizard/page_020.c index 705fddc3f..3cfc84fea 100644 --- a/src/modules/wizard/page_020.c +++ b/src/modules/wizard/page_020.c @@ -23,7 +23,7 @@ _profile_change(void *data, Evas_Object *obj) return; } snprintf(buf, sizeof(buf), "%s/profile.desktop", dir); - desk = efreet_desktop_get(buf); + desk = efreet_desktop_new(buf); if (desk) e_widget_textblock_markup_set(textblock, desk->comment); else @@ -96,7 +96,7 @@ wizard_page_show(E_Wizard_Page *pg) continue; } snprintf(buf, sizeof(buf), "%s/profile.desktop", dir); - desk = efreet_desktop_get(buf); + desk = efreet_desktop_new(buf); label = prof; if ((desk) && (desk->name)) label = desk->name; snprintf(buf, sizeof(buf), "%s/icon.edj", dir); diff --git a/src/modules/wizard/page_070.c b/src/modules/wizard/page_070.c index ee043b3d5..4c8283ca7 100644 --- a/src/modules/wizard/page_070.c +++ b/src/modules/wizard/page_070.c @@ -120,6 +120,7 @@ _app_write(App *a) a->name, a->generic, a->comment, a->exec, a->icon); if (a->extra) fprintf(f, "%s\n", a->extra); fclose(f); + /* TODO: This will leak */ efreet_desktop_get(buf); }