elm: multibuttomentry: check if value is valid before we access it
authorStefan Schmidt <stefan@osg.samsung.com>
Mon, 5 Dec 2016 15:53:42 +0000 (16:53 +0100)
committerStefan Schmidt <stefan@osg.samsung.com>
Mon, 5 Dec 2016 16:07:39 +0000 (17:07 +0100)
The ELM_MULTIBUTTONENTRY_DATA_GET_OR_RETURN will access 'it' here before we
check it is NULL. Reverse the order of these checks.

CID: 1365324, 1365323

src/lib/elementary/elc_multibuttonentry.c

index fafe7b3..bdd5f6b 100644 (file)
@@ -551,9 +551,10 @@ _on_item_focused(void *data,
                  void *event_info EINA_UNUSED)
 {
    Elm_Multibuttonentry_Item_Data *it = data;
+   if (!it) return;
+
    ELM_MULTIBUTTONENTRY_DATA_GET_OR_RETURN(WIDGET(it), sd);
 
-   if (!it) return;
    sd->selected_it = it;
 }
 
@@ -563,9 +564,10 @@ _on_item_unfocused(void *data,
                    void *event_info EINA_UNUSED)
 {
    Elm_Multibuttonentry_Item_Data *it = data;
+   if (!it) return;
+
    ELM_MULTIBUTTONENTRY_DATA_GET_OR_RETURN(WIDGET(it), sd);
 
-   if (!it) return;
    sd->selected_it = NULL;
    elm_layout_signal_emit(VIEW(it), "elm,state,unfocused", "elm");
 }