From af38ddf0a6950b38d9cab293003c74756ec224a1 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Thu, 29 Nov 2012 10:09:28 +0000 Subject: [PATCH] delete any invalid gadcon clients for custom gadcons since we don't validate as much here SVN revision: 79823 --- src/bin/e_gadcon.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/bin/e_gadcon.c b/src/bin/e_gadcon.c index f1c7df13c..9238b3742 100644 --- a/src/bin/e_gadcon.c +++ b/src/bin/e_gadcon.c @@ -5532,7 +5532,7 @@ _e_gadcon_custom_populate_job(void *data __UNUSED__) { const E_Gadcon_Client_Class *cc; E_Config_Gadcon_Client *cf_gcc; - const Eina_List *l; + Eina_List *l, *ll; E_Gadcon *gc; #ifndef E17_RELEASE_BUILD @@ -5544,8 +5544,13 @@ _e_gadcon_custom_populate_job(void *data __UNUSED__) { if (!gc->cf) continue; e_gadcon_layout_freeze(gc->o_container); - EINA_LIST_FOREACH(gc->cf->clients, l, cf_gcc) + EINA_LIST_FOREACH_SAFE(gc->cf->clients, l, ll, cf_gcc) { + if ((!cf_gcc->name) || (!cf_gcc->name[0]) || (!cf_gcc->id) || (!cf_gcc->id[0])) + { + e_gadcon_client_config_del(gc->cf, cf_gcc); + continue; + } cc = eina_hash_find(providers, cf_gcc->name); if (!cc) continue; if (gc->populate_class.func)