elm_object_item: fix the issue that del_cb doens't get item data as its parameter
authorJee-Yong Um <jc9.um@samsung.com>
Mon, 18 May 2015 08:09:19 +0000 (17:09 +0900)
committerChunEon Park <hermet@hermet.pe.kr>
Mon, 18 May 2015 08:10:09 +0000 (17:10 +0900)
Summary:
elm_object_item_del_cb_set() can set delete callback that is called on item deletion.
Del_cb, Evas_Smart_Cb, has void pointer for item data as its first parameter.
However, getting item data is broken.

@fix

Reviewers: Hermet

Reviewed By: Hermet

Subscribers: Hermet

Differential Revision: https://phab.enlightenment.org/D2524

src/lib/elm_widget.c

index 27221d5..e4deaf6 100644 (file)
@@ -4218,7 +4218,7 @@ _eo_del_cb(void *data EINA_UNUSED, Eo *eo_item, const Eo_Event_Description *desc
    Elm_Widget_Item_Data *item = eo_data_scope_get(eo_item, ELM_WIDGET_ITEM_CLASS);
    ELM_WIDGET_ITEM_CHECK_OR_RETURN(item, EINA_TRUE);
    if (item->del_func)
-      item->del_func((void *)item->data, item->widget, item->eo_obj);
+      item->del_func((void *) WIDGET_ITEM_DATA_GET(item->eo_obj), item->widget, item->eo_obj);
    return EINA_TRUE;
 }