barbieri pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=cfd4179ce7a052c685c1c03f9b98467456578dce

commit cfd4179ce7a052c685c1c03f9b98467456578dce
Author: Gustavo Sverzut Barbieri <[email protected]>
Date:   Fri Feb 28 01:46:13 2014 -0300

    elm_list/focus: @bugfix crashes with empty lists and unfocused elements.
---
 src/lib/elm_list.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/lib/elm_list.c b/src/lib/elm_list.c
index f81f643..4892178 100644
--- a/src/lib/elm_list.c
+++ b/src/lib/elm_list.c
@@ -1050,6 +1050,8 @@ _elm_list_smart_on_focus(Eo *obj, void *_pd, va_list 
*list)
    if (elm_widget_focus_get(obj) && sd->selected && !sd->last_selected_item)
      sd->last_selected_item = eina_list_data_get(sd->selected);
 
+   if (!sd->items) return;
+
    if (elm_widget_focus_get(obj))
      {
         if (sd->last_focused_item)
@@ -1064,7 +1066,8 @@ _elm_list_smart_on_focus(Eo *obj, void *_pd, va_list 
*list)
      {
         sd->prev_focused_item = sd->focused_item;
         sd->last_focused_item = sd->focused_item;
-        _elm_list_item_unfocused((Elm_List_Item *)sd->focused_item);
+        if (sd->focused_item)
+            _elm_list_item_unfocused((Elm_List_Item *)sd->focused_item);
      }
    if (ret) *ret = EINA_TRUE;
 }

-- 


Reply via email to