hermet pushed a commit to branch master. http://git.enlightenment.org/core/elementary.git/commit/?id=c0afc63262d6ceb944e0019bb4d01ca36d93b0e0
commit c0afc63262d6ceb944e0019bb4d01ca36d93b0e0 Author: ChunEon Park <[email protected]> Date: Thu Feb 20 23:51:38 2014 +0900 transit - fix the double free obj_data case. if the object is added twice to the one transit, the obj_remove_cb would be called twice. in this case it will try to access the freed obj_data and crashed up. now it's fixed. --- src/lib/elm_transit.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/lib/elm_transit.c b/src/lib/elm_transit.c index d8a2d3e..bb0cb00 100644 --- a/src/lib/elm_transit.c +++ b/src/lib/elm_transit.c @@ -174,6 +174,7 @@ _transit_obj_remove_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj, void * free(obj_data->state); free(obj_data); } + evas_object_data_del(obj, _transit_key); _remove_obj_from_list(transit, obj); if (!transit->objs && !transit->deleted) elm_transit_del(transit); } --
