elm genlist: Modified genlist object reference checking.

On Thu, Aug 4, 2011 at 7:11 PM, Hyoyoung Chang
<hyoyoung.chang@samsung.com> wrote:
> Yeah, you're right.
> Could review improve version of previous patch?
> I attached it.


SVN revision: 62190
This commit is contained in:
Daniel Juyung Seo 2011-08-08 05:42:29 +00:00
parent eb039ddbda
commit cd80368508
1 changed files with 3 additions and 14 deletions

View File

@ -540,12 +540,6 @@ _del_hook(Evas_Object *obj)
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);
}
@ -833,16 +827,10 @@ _item_select(Elm_Genlist_Item *it)
it->selected = EINA_TRUE;
it->wd->selected = eina_list_append(it->wd->selected, it);
call:
evas_object_ref(it->base.widget);
it->walking++;
it->wd->walking++;
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->func.func) it->func.func((void *)it->func.data, it->base.widget, it);
if (!it->delete_me)
evas_object_smart_callback_call(it->base.widget, SIG_SELECTED, it);
it->walking--;
@ -857,6 +845,7 @@ call:
}
}
it->wd->last_selected_item = it;
evas_object_unref(it->base.widget);
}
static void