jackdanielz pushed a commit to branch master. http://git.enlightenment.org/core/elementary.git/commit/?id=1db6c55fe92b78feb2ddb27dcf1db3516231811e
commit 1db6c55fe92b78feb2ddb27dcf1db3516231811e Author: Daniel Zaoui <[email protected]> Date: Tue Mar 18 08:07:14 2014 +0200 Focus: fix segfault due to bad call to Eo function. Due to Eolian auto-generation, legacy parameters are directly transferred to Eo functions without conversion. In this case, is_next was Eina_Bool in legacy and Eina_Bool * in Eo. The logic code was expecting a pointer but was receiving a Eina_Bool. The fix consists in giving the logic code the Eina_Bool instead of the pointer. @fix --- src/lib/elm_genlist.c | 4 ++-- src/lib/elm_list.c | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/lib/elm_genlist.c b/src/lib/elm_genlist.c index 8219142..b16b7b5 100644 --- a/src/lib/elm_genlist.c +++ b/src/lib/elm_genlist.c @@ -7855,13 +7855,13 @@ _elm_genlist_focus_highlight_geometry_get(Eo *obj EINA_UNUSED, void *_pd, va_lis Evas_Coord *y = va_arg(*list, Evas_Coord *); Evas_Coord *w = va_arg(*list, Evas_Coord *); Evas_Coord *h = va_arg(*list, Evas_Coord *); - Eina_Bool *is_next = va_arg(*list, Eina_Bool *); + Eina_Bool is_next = va_arg(*list, int); Evas_Coord ox, oy, oh, item_x = 0, item_y = 0, item_w = 0, item_h = 0; Elm_Genlist_Smart_Data *sd = _pd; evas_object_geometry_get(obj, &ox, &oy, NULL, &oh); - if (is_next && *is_next) + if (is_next) { if (sd->focused_item) { diff --git a/src/lib/elm_list.c b/src/lib/elm_list.c index 478125a..893cef1 100644 --- a/src/lib/elm_list.c +++ b/src/lib/elm_list.c @@ -3044,11 +3044,11 @@ _elm_list_focus_highlight_geometry_get(Eo *obj EINA_UNUSED, void *_pd, va_list * Evas_Coord *y = va_arg(*list, Evas_Coord *); Evas_Coord *w = va_arg(*list, Evas_Coord *); Evas_Coord *h = va_arg(*list, Evas_Coord *); - Eina_Bool *is_next = va_arg(*list, Eina_Bool *); + Eina_Bool is_next = va_arg(*list, int); Elm_List_Smart_Data *sd = _pd; - if (is_next && *is_next) + if (is_next) { if (sd->focused_item) { --
