Dear developers.
This patch is about elm_genlist.
When a user delete genlist object at selected callback,
Genlist don't proper handle it.
Before genlist clearing, genlist delete its widget data.
So sometimes, it's crashed.
I made two point diffs
1. add genlist clearning at _del_hook
2. checking at _item_select, whether it's deleted or not.
Index: src/lib/elm_genlist.c
===================================================================
--- src/lib/elm_genlist.c (리ë¹ì 61988)
+++ src/lib/elm_genlist.c (ìì
ì¬ë³¸)
@@ -540,6 +540,12 @@
if (wd->multi_timer) ecore_timer_del(wd->multi_timer);
if (wd->mode_type) eina_stringshare_del(wd->mode_type);
if (wd->scr_hold_timer) ecore_timer_del(wd->scr_hold_timer);
+ if (wd->walking > 0)
+ {
+ wd->walking = 0;
+ elm_genlist_clear(obj);
+ }
+
free(wd);
}
@@ -829,7 +835,14 @@
call:
it->walking++;
it->wd->walking++;
- if (it->func.func) it->func.func((void *)it->func.data, it->base.widget,
it);
+ if (it->func.func)
+ {
+ Evas_Object *baseobj = it->base.widget;
+ const char *objtype = NULL;
+ it->func.func((void *)it->func.data, it->base.widget, it);
+ objtype = evas_object_type_get(baseobj);
+ if ((!objtype) || (!strcmp(objtype,""))) return;
+ }
if (!it->delete_me)
evas_object_smart_callback_call(it->base.widget, SIG_SELECTED, it);
it->walking--;
------------------------------------------------------------------------------
BlackBerry® DevCon Americas, Oct. 18-20, San Francisco, CA
The must-attend event for mobile developers. Connect with experts.
Get tools for creating Super Apps. See the latest technologies.
Sessions, hands-on labs, demos & much more. Register early & save!
http://p.sf.net/sfu/rim-blackberry-1
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel