EINA_SAFETY_ON_NULL_RETURN
authorhelen <helen>
Fri, 3 Dec 2010 14:08:33 +0000 (14:08 +0000)
committerhelen <helen@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Fri, 3 Dec 2010 14:08:33 +0000 (14:08 +0000)
Checking parameters with EINA_SAFETY_ON_NULL_RETURN and
EINA_SAFETY_ON_NULL_RETURN_VAL in Elementary

SVN revision: 55188

56 files changed:
legacy/elementary/src/lib/elc_anchorblock.c
legacy/elementary/src/lib/elc_anchorview.c
legacy/elementary/src/lib/elc_fileselector.c
legacy/elementary/src/lib/elc_fileselector_button.c
legacy/elementary/src/lib/elc_fileselector_entry.c
legacy/elementary/src/lib/elc_hoversel.c
legacy/elementary/src/lib/elc_scrolled_entry.c
legacy/elementary/src/lib/elm_actionslider.c
legacy/elementary/src/lib/elm_bg.c
legacy/elementary/src/lib/elm_box.c
legacy/elementary/src/lib/elm_bubble.c
legacy/elementary/src/lib/elm_button.c
legacy/elementary/src/lib/elm_calendar.c
legacy/elementary/src/lib/elm_check.c
legacy/elementary/src/lib/elm_clock.c
legacy/elementary/src/lib/elm_colorselector.c
legacy/elementary/src/lib/elm_conform.c
legacy/elementary/src/lib/elm_ctxpopup.c
legacy/elementary/src/lib/elm_diskselector.c
legacy/elementary/src/lib/elm_entry.c
legacy/elementary/src/lib/elm_flip.c
legacy/elementary/src/lib/elm_flipselector.c
legacy/elementary/src/lib/elm_frame.c
legacy/elementary/src/lib/elm_gengrid.c
legacy/elementary/src/lib/elm_genlist.c
legacy/elementary/src/lib/elm_hover.c
legacy/elementary/src/lib/elm_icon.c
legacy/elementary/src/lib/elm_image.c
legacy/elementary/src/lib/elm_index.c
legacy/elementary/src/lib/elm_label.c
legacy/elementary/src/lib/elm_layout.c
legacy/elementary/src/lib/elm_list.c
legacy/elementary/src/lib/elm_main.c
legacy/elementary/src/lib/elm_map.c
legacy/elementary/src/lib/elm_mapbuf.c
legacy/elementary/src/lib/elm_menu.c
legacy/elementary/src/lib/elm_notify.c
legacy/elementary/src/lib/elm_pager.c
legacy/elementary/src/lib/elm_panel.c
legacy/elementary/src/lib/elm_panes.c
legacy/elementary/src/lib/elm_photo.c
legacy/elementary/src/lib/elm_photocam.c
legacy/elementary/src/lib/elm_progressbar.c
legacy/elementary/src/lib/elm_radio.c
legacy/elementary/src/lib/elm_scroller.c
legacy/elementary/src/lib/elm_separator.c
legacy/elementary/src/lib/elm_slider.c
legacy/elementary/src/lib/elm_slideshow.c
legacy/elementary/src/lib/elm_spinner.c
legacy/elementary/src/lib/elm_table.c
legacy/elementary/src/lib/elm_theme.c
legacy/elementary/src/lib/elm_thumb.c
legacy/elementary/src/lib/elm_toggle.c
legacy/elementary/src/lib/elm_toolbar.c
legacy/elementary/src/lib/elm_transit.c
legacy/elementary/src/lib/elm_widget.c

index e10b52e..7602af0 100644 (file)
@@ -183,6 +183,8 @@ elm_anchorblock_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
@@ -391,7 +393,7 @@ elm_anchorblock_item_provider_append(Evas_Object *obj, Evas_Object *(*func) (voi
    ELM_CHECK_WIDTYPE(obj, widtype);
    Widget_Data *wd = elm_widget_data_get(obj);
    if (!wd) return;
-   if (!func) return;
+   EINA_SAFETY_ON_NULL_RETURN(func);
    Elm_Anchorblock_Item_Provider *ip = calloc(1, sizeof(Elm_Anchorblock_Item_Provider));
    if (!ip) return;
    ip->func = func;
@@ -417,7 +419,7 @@ elm_anchorblock_item_provider_prepend(Evas_Object *obj, Evas_Object *(*func) (vo
    ELM_CHECK_WIDTYPE(obj, widtype);
    Widget_Data *wd = elm_widget_data_get(obj);
    if (!wd) return;
-   if (!func) return;
+   EINA_SAFETY_ON_NULL_RETURN(func);
    Elm_Anchorblock_Item_Provider *ip = calloc(1, sizeof(Elm_Anchorblock_Item_Provider));
    if (!ip) return;
    ip->func = func;
@@ -445,7 +447,7 @@ elm_anchorblock_item_provider_remove(Evas_Object *obj, Evas_Object *(*func) (voi
    Eina_List *l;
    Elm_Anchorblock_Item_Provider *ip;
    if (!wd) return;
-   if (!func) return;
+   EINA_SAFETY_ON_NULL_RETURN(func);
    EINA_LIST_FOREACH(wd->item_providers, l, ip)
      {
         if ((ip->func == func) && (ip->data == data))
index e727d4b..7a54c25 100644 (file)
@@ -174,6 +174,8 @@ elm_anchorview_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
@@ -424,7 +426,7 @@ elm_anchorview_item_provider_append(Evas_Object *obj, Evas_Object *(*func) (void
    ELM_CHECK_WIDTYPE(obj, widtype);
    Widget_Data *wd = elm_widget_data_get(obj);
    if (!wd) return;
-   if (!func) return;
+   EINA_SAFETY_ON_NULL_RETURN(func);
    Elm_Anchorview_Item_Provider *ip = calloc(1, sizeof(Elm_Anchorview_Item_Provider));
    if (!ip) return;
    ip->func = func;
@@ -450,7 +452,7 @@ elm_anchorview_item_provider_prepend(Evas_Object *obj, Evas_Object *(*func) (voi
    ELM_CHECK_WIDTYPE(obj, widtype);
    Widget_Data *wd = elm_widget_data_get(obj);
    if (!wd) return;
-   if (!func) return;
+   EINA_SAFETY_ON_NULL_RETURN(func);
    Elm_Anchorview_Item_Provider *ip = calloc(1, sizeof(Elm_Anchorview_Item_Provider));
    if (!ip) return;
    ip->func = func;
@@ -478,7 +480,7 @@ elm_anchorview_item_provider_remove(Evas_Object *obj, Evas_Object *(*func) (void
    Eina_List *l;
    Elm_Anchorview_Item_Provider *ip;
    if (!wd) return;
-   if (!func) return;
+   EINA_SAFETY_ON_NULL_RETURN(func);
    EINA_LIST_FOREACH(wd->item_providers, l, ip)
      {
         if ((ip->func == func) && (ip->data == data))
index f86bcd1..2482a02 100644 (file)
@@ -454,6 +454,8 @@ elm_fileselector_add(Evas_Object *parent)
    Evas_Object *obj, *ic, *bt, *li, *en;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    // Elementary Widget
    wd = ELM_NEW(Widget_Data);
    wd->expand = !!_elm_config->fileselector_expand_enable;
index cac2695..595971e 100644 (file)
@@ -233,6 +233,8 @@ elm_fileselector_button_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    wd->window_title = eina_stringshare_add(DEFAULT_WINDOW_TITLE);
    wd->fsd.path = eina_stringshare_add(getenv("HOME"));
index f03e543..4bcabed 100644 (file)
@@ -213,6 +213,8 @@ elm_fileselector_entry_add(Evas_Object *parent)
    Evas *e = evas_object_evas_get(parent);
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
 
    obj = elm_widget_add(e);
index c1f197f..b87f033 100644 (file)
@@ -258,6 +258,8 @@ elm_hoversel_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index 4892845..acf280e 100644 (file)
@@ -360,6 +360,8 @@ elm_scrolled_entry_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
@@ -442,7 +444,8 @@ elm_scrolled_entry_icon_set(Evas_Object *obj, Evas_Object *icon)
    ELM_CHECK_WIDTYPE(obj, widtype);
    Widget_Data *wd = elm_widget_data_get(obj);
    Evas_Object *edje;
-   if ((!wd) || (!icon)) return;
+   if (!wd) return;
+   EINA_SAFETY_ON_NULL_RETURN(icon);
    if (wd->icon == icon) return;
    if (wd->icon) evas_object_del(wd->icon);
    wd->icon = icon;
@@ -546,7 +549,8 @@ elm_scrolled_entry_end_set(Evas_Object *obj, Evas_Object *end)
    ELM_CHECK_WIDTYPE(obj, widtype);
    Widget_Data *wd = elm_widget_data_get(obj);
    Evas_Object *edje;
-   if ((!wd) || (!end)) return;
+   if (!wd) return;
+   EINA_SAFETY_ON_NULL_RETURN(end);
    if (wd->end == end) return;
    if (wd->end) evas_object_del(wd->end);
    wd->end = end;
@@ -1328,7 +1332,7 @@ elm_scrolled_entry_item_provider_append(Evas_Object *obj, Evas_Object *(*func) (
    ELM_CHECK_WIDTYPE(obj, widtype);
    Widget_Data *wd = elm_widget_data_get(obj);
    if (!wd) return;
-   if (!func) return;
+   EINA_SAFETY_ON_NULL_RETURN(func);
    Elm_Entry_Item_Provider *ip = calloc(1, sizeof(Elm_Entry_Item_Provider));
    if (!ip) return;
    ip->func = func;
@@ -1354,7 +1358,7 @@ elm_scrolled_entry_item_provider_prepend(Evas_Object *obj, Evas_Object *(*func)
    ELM_CHECK_WIDTYPE(obj, widtype);
    Widget_Data *wd = elm_widget_data_get(obj);
    if (!wd) return;
-   if (!func) return;
+   EINA_SAFETY_ON_NULL_RETURN(func);
    Elm_Entry_Item_Provider *ip = calloc(1, sizeof(Elm_Entry_Item_Provider));
    if (!ip) return;
    ip->func = func;
@@ -1382,7 +1386,7 @@ elm_scrolled_entry_item_provider_remove(Evas_Object *obj, Evas_Object *(*func) (
    Eina_List *l;
    Elm_Entry_Item_Provider *ip;
    if (!wd) return;
-   if (!func) return;
+   EINA_SAFETY_ON_NULL_RETURN(func);
    EINA_LIST_FOREACH(wd->item_providers, l, ip)
      {
         if ((ip->func == func) && (ip->data == data))
@@ -1420,7 +1424,7 @@ elm_scrolled_entry_text_filter_append(Evas_Object *obj, void (*func) (void *data
 
    wd = elm_widget_data_get(obj);
 
-   if (!func) return;
+   EINA_SAFETY_ON_NULL_RETURN(func);
 
    tf = ELM_NEW(Elm_Entry_Text_Filter);
    if (!tf) return;
@@ -1450,7 +1454,7 @@ elm_scrolled_entry_text_filter_prepend(Evas_Object *obj, void (*func) (void *dat
 
    wd = elm_widget_data_get(obj);
 
-   if (!func) return;
+   EINA_SAFETY_ON_NULL_RETURN(func);
 
    tf = ELM_NEW(Elm_Entry_Text_Filter);
    if (!tf) return;
@@ -1480,7 +1484,8 @@ elm_scrolled_entry_text_filter_remove(Evas_Object *obj, void (*func) (void *data
    ELM_CHECK_WIDTYPE(obj, widtype);
 
    wd = elm_widget_data_get(obj);
-   if (!func) return;
+
+   EINA_SAFETY_ON_NULL_RETURN(func);
 
    EINA_LIST_FOREACH(wd->text_filters, l, tf)
      {
index 7c1507d..df6aa8f 100644 (file)
@@ -270,6 +270,8 @@ elm_actionslider_add(Evas_Object *parent)
    Widget_Data *wd;
    Evas *e;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index 43b230e..2c11ca9 100644 (file)
@@ -132,6 +132,8 @@ elm_bg_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index 770a684..fff25d8 100644 (file)
@@ -340,6 +340,8 @@ elm_box_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
@@ -749,8 +751,8 @@ elm_box_transition_new(const double duration,
 {
    Elm_Box_Transition *box_data;
 
-   if ((!start_layout) || (!end_layout))
-      return NULL;
+   EINA_SAFETY_ON_NULL_RETURN_VAL(start_layout, NULL);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(end_layout, NULL);
 
    box_data = calloc(1, sizeof(Elm_Box_Transition));
    if (!box_data)
@@ -781,6 +783,8 @@ elm_box_transition_new(const double duration,
 EAPI void
 elm_box_transition_free(void *data)
 {
+   EINA_SAFETY_ON_NULL_RETURN(data);
+
    Transition_Animation_Data *tad;
    Elm_Box_Transition *box_data = data;
    if ((box_data->start.free_data) && (box_data->start.data))
index b41f134..6eb030d 100644 (file)
@@ -147,6 +147,8 @@ elm_bubble_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
@@ -438,7 +440,8 @@ elm_bubble_corner_set(Evas_Object *obj, const char *corner)
 {
    ELM_CHECK_WIDTYPE(obj, widtype);
    Widget_Data *wd = elm_widget_data_get(obj);
-   if ((!wd) || (!corner)) return;
+   if (!wd) return;
+   EINA_SAFETY_ON_NULL_RETURN(corner);
    eina_stringshare_replace(&wd->corner, corner);
    _theme_hook(obj);
 }
index 74f6a61..b25316e 100644 (file)
@@ -298,6 +298,8 @@ elm_button_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index d3d5436..3276adc 100644 (file)
@@ -711,6 +711,8 @@ elm_calendar_add(Evas_Object *parent)
    int i, t;
    Evas *e;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
@@ -797,6 +799,8 @@ elm_calendar_weekdays_names_set(Evas_Object *obj, const char *weekdays[])
    Widget_Data *wd = elm_widget_data_get(obj);
    if (!wd) return;
 
+   EINA_SAFETY_ON_NULL_RETURN(weekdays);
+
    for (i = 0; i < 7; i++)
      {
         eina_stringshare_replace(&wd->weekdays[i], weekdays[i]);
@@ -918,8 +922,6 @@ elm_calendar_min_max_year_set(Evas_Object *obj, int min, int max)
 EAPI void
 elm_calendar_min_max_year_get(const Evas_Object *obj, int *min, int *max)
 {
-   if (min) *min = 0;
-   if (max) *max = 0;
    ELM_CHECK_WIDTYPE(obj, widtype);
    Widget_Data *wd = elm_widget_data_get(obj);
    if (!wd) return;
@@ -989,6 +991,8 @@ elm_calendar_selected_time_set(Evas_Object *obj, struct tm *selected_time)
    ELM_CHECK_WIDTYPE(obj, widtype);
    Widget_Data *wd = elm_widget_data_get(obj);
    if (!wd) return;
+
+   EINA_SAFETY_ON_NULL_RETURN(selected_time);
    wd->selected_time = *selected_time;
    _populate(obj);
    return;
@@ -1012,7 +1016,8 @@ elm_calendar_selected_time_get(const Evas_Object *obj, struct tm *selected_time)
    ELM_CHECK_WIDTYPE(obj, widtype) EINA_FALSE;
    Widget_Data *wd = elm_widget_data_get(obj);
    if (!wd) return EINA_FALSE;
-   if (selected_time) *selected_time = wd->selected_time;
+   EINA_SAFETY_ON_NULL_RETURN_VAL(selected_time, EINA_FALSE);
+   *selected_time = wd->selected_time;
    return EINA_TRUE;
 }
 
@@ -1119,7 +1124,7 @@ elm_calendar_mark_del(Elm_Calendar_Mark *mark)
    Evas_Object *obj;
    Widget_Data *wd;
 
-   if (!mark) return;
+   EINA_SAFETY_ON_NULL_RETURN(mark);
 
    obj = mark->obj;
    wd = elm_widget_data_get(obj);
index 606edfa..a4e6d4b 100644 (file)
@@ -235,6 +235,8 @@ elm_check_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index 815a6a3..9962165 100644 (file)
@@ -530,6 +530,8 @@ elm_clock_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index 4d5ec21..6ae1630 100644 (file)
@@ -803,6 +803,8 @@ elm_colorselector_add(Evas_Object *parent)
    Widget_Data *wd = NULL;
    Evas *e;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index a6049e8..4f4ec39 100644 (file)
@@ -215,6 +215,8 @@ elm_conformant_add(Evas_Object *parent)
    Evas *evas;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
 
    evas = evas_object_evas_get(parent);
index 563f26f..ce357cb 100644 (file)
@@ -306,6 +306,8 @@ elm_ctxpopup_add(Evas_Object* parent)
    Widget_Data* wd;
    char buf[1024];
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    wd->evas = evas_object_evas_get(parent);
    obj = elm_widget_add(wd->evas);
@@ -503,9 +505,11 @@ elm_ctxpopup_hover_parent_set(Evas_Object *obj, Evas_Object *parent)
    Widget_Data *wd;
 
    wd = elm_widget_data_get(obj);
-   if ((!wd) || (!parent))
+   if (!wd)
      return;
 
+   EINA_SAFETY_ON_NULL_RETURN(parent);
+
    elm_hover_parent_set(wd->hover, parent);
 
    if (wd->hover_parent)
index 9269868..fe34ef9 100644 (file)
@@ -624,6 +624,8 @@ elm_diskselector_add(Evas_Object *parent)
    Evas_Object *obj;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    wd->self = obj = elm_widget_add(evas_object_evas_get(parent));
    ELM_SET_WIDTYPE(widtype, "diskselector");
index 46a8619..71cd38c 100644 (file)
@@ -1572,6 +1572,8 @@ elm_entry_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
@@ -2398,7 +2400,7 @@ elm_entry_item_provider_append(Evas_Object *obj, Evas_Object *(*func) (void *dat
    ELM_CHECK_WIDTYPE(obj, widtype);
    Widget_Data *wd = elm_widget_data_get(obj);
    if (!wd) return;
-   if (!func) return;
+   EINA_SAFETY_ON_NULL_RETURN(func);
    Elm_Entry_Item_Provider *ip = calloc(1, sizeof(Elm_Entry_Item_Provider));
    if (!ip) return;
    ip->func = func;
@@ -2424,7 +2426,7 @@ elm_entry_item_provider_prepend(Evas_Object *obj, Evas_Object *(*func) (void *da
    ELM_CHECK_WIDTYPE(obj, widtype);
    Widget_Data *wd = elm_widget_data_get(obj);
    if (!wd) return;
-   if (!func) return;
+   EINA_SAFETY_ON_NULL_RETURN(func);
    Elm_Entry_Item_Provider *ip = calloc(1, sizeof(Elm_Entry_Item_Provider));
    if (!ip) return;
    ip->func = func;
@@ -2452,7 +2454,7 @@ elm_entry_item_provider_remove(Evas_Object *obj, Evas_Object *(*func) (void *dat
    Eina_List *l;
    Elm_Entry_Item_Provider *ip;
    if (!wd) return;
-   if (!func) return;
+   EINA_SAFETY_ON_NULL_RETURN(func);
    EINA_LIST_FOREACH(wd->item_providers, l, ip)
      {
         if ((ip->func == func) && (ip->data == data))
@@ -2490,7 +2492,7 @@ elm_entry_text_filter_append(Evas_Object *obj, void (*func) (void *data, Evas_Ob
 
    wd = elm_widget_data_get(obj);
 
-   if (!func) return;
+   EINA_SAFETY_ON_NULL_RETURN(func);
 
    tf = ELM_NEW(Elm_Entry_Text_Filter);
    if (!tf) return;
@@ -2520,7 +2522,7 @@ elm_entry_text_filter_prepend(Evas_Object *obj, void (*func) (void *data, Evas_O
 
    wd = elm_widget_data_get(obj);
 
-   if (!func) return;
+   EINA_SAFETY_ON_NULL_RETURN(func);
 
    tf = ELM_NEW(Elm_Entry_Text_Filter);
    if (!tf) return;
@@ -2550,7 +2552,8 @@ elm_entry_text_filter_remove(Evas_Object *obj, void (*func) (void *data, Evas_Ob
    ELM_CHECK_WIDTYPE(obj, widtype);
 
    wd = elm_widget_data_get(obj);
-   if (!func) return;
+
+   EINA_SAFETY_ON_NULL_RETURN(func);
 
    EINA_LIST_FOREACH(wd->text_filters, l, tf)
      {
@@ -2625,7 +2628,9 @@ elm_entry_filter_limit_size(void *data, Evas_Object *entry, char **text)
    const char *(*text_get)(const Evas_Object *);
    const char *widget_type;
 
-   if (!lim) return;
+   EINA_SAFETY_ON_NULL_RETURN(data);
+   EINA_SAFETY_ON_NULL_RETURN(entry);
+   EINA_SAFETY_ON_NULL_RETURN(text);
 
    /* hack. I don't want to copy the entire function to work with
     * scrolled_entry */
@@ -2705,7 +2710,10 @@ elm_entry_filter_accept_set(void *data, Evas_Object *entry __UNUSED__, char **te
    Eina_Bool goes_in;
    int read_idx, last_read_idx = 0, read_char;
 
-   if ((!as) || ((!as->accepted) && (!as->rejected)))
+   EINA_SAFETY_ON_NULL_RETURN(data);
+   EINA_SAFETY_ON_NULL_RETURN(text);
+
+   if ((!as->accepted) && (!as->rejected))
       return;
 
    if (as->accepted)
index 7318bac..207122a 100644 (file)
@@ -405,6 +405,8 @@ elm_flip_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index 335d180..06ce8b2 100644 (file)
@@ -568,6 +568,8 @@ elm_flipselector_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index b75a241..23a6c15 100644 (file)
@@ -113,6 +113,8 @@ elm_frame_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index b99181d..46e4df3 100644 (file)
@@ -1418,6 +1418,8 @@ elm_gengrid_add(Evas_Object *parent)
    static Evas_Smart *smart = NULL;
    Eina_Bool bounce = _elm_config->thumbscroll_bounce_enable;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index 4a28f12..14388c7 100644 (file)
@@ -2179,6 +2179,8 @@ elm_genlist_add(Evas_Object *parent)
    Evas_Coord minw, minh;
    static Evas_Smart *smart = NULL;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    if (!smart)
      {
         static Evas_Smart_Class sc;
@@ -3679,7 +3681,7 @@ elm_genlist_item_item_class_update(Elm_Genlist_Item *it, const Elm_Genlist_Item_
 {
    ELM_WIDGET_ITEM_WIDTYPE_CHECK_OR_RETURN(it);
    if (!it->block) return;
-   if (!itc) return;
+   EINA_SAFETY_ON_NULL_RETURN(itc);
    if (it->delete_me) return;
    it->itc = itc;
    elm_genlist_item_update(it);
index 7e5e5e3..568808a 100644 (file)
@@ -463,6 +463,8 @@ elm_hover_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
 
    ELM_HOVER_PARTS_FOREACH
index 9c1e49b..64bb4cd 100644 (file)
@@ -186,6 +186,8 @@ elm_icon_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
@@ -234,7 +236,8 @@ elm_icon_file_set(Evas_Object *obj, const char *file, const char *group)
    Eina_Bool ret;
    const char *p;
 
-   if ((!wd) || (!file)) return EINA_FALSE;
+   if (!wd) return EINA_FALSE;
+   EINA_SAFETY_ON_NULL_RETURN_VAL(file, EINA_FALSE);
    if (wd->stdicon) eina_stringshare_del(wd->stdicon);
    wd->stdicon = NULL;
    if (((p = strrchr(file, '.'))) && (!strcasecmp(p, ".edj")))
index cfedae2..00d887f 100644 (file)
@@ -114,6 +114,8 @@ elm_image_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
@@ -161,7 +163,8 @@ elm_image_file_set(Evas_Object *obj, const char *file, const char *group)
    Eina_Bool ret;
    const char *p;
 
-   if ((!wd) || (!file)) return EINA_FALSE;
+   if (!wd) return EINA_FALSE;
+   EINA_SAFETY_ON_NULL_RETURN_VAL(file, EINA_FALSE);
    if (((p = strrchr(file, '.'))) && (!strcasecmp(p, ".edj")))
      ret = _els_smart_icon_file_edje_set(wd->img, file, group);
    else
index 921834a..af9aed6 100644 (file)
@@ -493,6 +493,8 @@ elm_index_add(Evas_Object *parent)
    Widget_Data *wd;
    Evas_Coord minw, minh;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index c0f89c8..295d153 100644 (file)
@@ -418,6 +418,8 @@ elm_label_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    wd->bgcolor = EINA_FALSE;
index e765aa9..6f2368d 100644 (file)
@@ -310,6 +310,8 @@ elm_layout_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    wd->obj = obj = elm_widget_add(e);
index 6752626..664f2ae 100644 (file)
@@ -1222,6 +1222,8 @@ elm_list_add(Evas_Object *parent)
    Widget_Data *wd;
    Evas_Coord minw, minh;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    wd->self = obj = elm_widget_add(e);
@@ -1356,7 +1358,8 @@ elm_list_item_insert_before(Evas_Object *obj, Elm_List_Item *before, const char
    Widget_Data *wd;
    Elm_List_Item *it;
 
-   if ((!before) || (!before->node)) return NULL;
+   EINA_SAFETY_ON_NULL_RETURN_VAL(before, NULL);
+   if (!before->node) return NULL;
    ELM_LIST_ITEM_CHECK_DELETED_RETURN(before, NULL);
 
    ELM_CHECK_WIDTYPE(obj, widtype) NULL;
@@ -1390,7 +1393,8 @@ elm_list_item_insert_after(Evas_Object *obj, Elm_List_Item *after, const char *l
    Widget_Data *wd;
    Elm_List_Item *it;
 
-   if ((!after) || (!after->node)) return NULL;
+   EINA_SAFETY_ON_NULL_RETURN_VAL(after, NULL);
+   if (!after->node) return NULL;
    ELM_LIST_ITEM_CHECK_DELETED_RETURN(after, NULL);
 
    ELM_CHECK_WIDTYPE(obj, widtype) NULL;
index 93c39ff..9ac3afb 100644 (file)
@@ -1081,6 +1081,7 @@ EAPI void
 elm_object_scale_set(Evas_Object *obj,
                      double       scale)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
    elm_widget_scale_set(obj, scale);
 }
 
@@ -1094,6 +1095,7 @@ elm_object_scale_set(Evas_Object *obj,
 EAPI double
 elm_object_scale_get(const Evas_Object *obj)
 {
+   EINA_SAFETY_ON_NULL_RETURN_VAL(obj, 0.0);
    return elm_widget_scale_get(obj);
 }
 
@@ -1169,6 +1171,7 @@ EAPI void
 elm_object_style_set(Evas_Object *obj,
                      const char  *style)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
    elm_widget_style_set(obj, style);
 }
 
@@ -1186,6 +1189,7 @@ elm_object_style_set(Evas_Object *obj,
 EAPI const char *
 elm_object_style_get(const Evas_Object *obj)
 {
+   EINA_SAFETY_ON_NULL_RETURN_VAL(obj, NULL);
    return elm_widget_style_get(obj);
 }
 
@@ -1202,6 +1206,7 @@ EAPI void
 elm_object_disabled_set(Evas_Object *obj,
                         Eina_Bool    disabled)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
    elm_widget_disabled_set(obj, disabled);
 }
 
@@ -1217,6 +1222,7 @@ elm_object_disabled_set(Evas_Object *obj,
 EAPI Eina_Bool
 elm_object_disabled_get(const Evas_Object *obj)
 {
+   EINA_SAFETY_ON_NULL_RETURN_VAL(obj, EINA_FALSE);
    return elm_widget_disabled_get(obj);
 }
 
@@ -1374,8 +1380,7 @@ elm_profile_list_free(Eina_List *l)
 EAPI void
 elm_profile_set(const char *profile)
 {
-   if (!profile)
-     return;
+   EINA_SAFETY_ON_NULL_RETURN(profile);
    _elm_config_profile_set(profile);
 }
 
@@ -1441,8 +1446,7 @@ elm_engine_current_get(void)
 EAPI void
 elm_engine_set(const char *engine)
 {
-   if (!engine)
-     return;
+   EINA_SAFETY_ON_NULL_RETURN(engine);
 
    _elm_config_engine_set(engine);
 }
@@ -1592,7 +1596,7 @@ elm_font_overlay_all_apply(void)
 EAPI Elm_Font_Properties *
 elm_font_properties_get(const char *font)
 {
-   if (!font) return NULL;
+   EINA_SAFETY_ON_NULL_RETURN_VAL(font, NULL);
    return _elm_font_properties_get(NULL, font);
 }
 
@@ -1608,6 +1612,7 @@ elm_font_properties_free(Elm_Font_Properties *efp)
 {
    const char *str;
 
+   EINA_SAFETY_ON_NULL_RETURN(efp);
    EINA_LIST_FREE(efp->styles, str)
      if (str) eina_stringshare_del(str);
    if (efp->name) eina_stringshare_del(efp->name);
@@ -1635,7 +1640,7 @@ elm_font_fontconfig_name_get(const char *name,
 {
    char buf[256];
 
-   if (!name) return NULL;
+   EINA_SAFETY_ON_NULL_RETURN_VAL(name, NULL);
    if (!style || style[0] == 0) return eina_stringshare_add(name);
    snprintf(buf, 256, "%s" ELM_FONT_TOKEN_STYLE "%s", name, style);
    return eina_stringshare_add(buf);
@@ -2135,6 +2140,7 @@ elm_edje_collection_cache_all_set(int size)
 EAPI Eina_Bool
 elm_object_focus_get(const Evas_Object *obj)
 {
+   EINA_SAFETY_ON_NULL_RETURN_VAL(obj, EINA_FALSE);
    return elm_widget_focus_get(obj);
 }
 
@@ -2149,6 +2155,7 @@ elm_object_focus_get(const Evas_Object *obj)
 EAPI void
 elm_object_focus(Evas_Object *obj)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
    if (elm_widget_focus_get(obj))
      return;
 
@@ -2167,6 +2174,7 @@ elm_object_focus(Evas_Object *obj)
 EAPI void
 elm_object_unfocus(Evas_Object *obj)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
    if (!elm_widget_can_focus_get(obj)) return;
    elm_widget_focused_object_clear(obj);
 }
@@ -2185,6 +2193,7 @@ EAPI void
 elm_object_focus_allow_set(Evas_Object *obj,
                            Eina_Bool    enable)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
    elm_widget_can_focus_set(obj, enable);
 }
 
@@ -2201,6 +2210,7 @@ elm_object_focus_allow_set(Evas_Object *obj,
 EAPI Eina_Bool
 elm_object_focus_allow_get(const Evas_Object *obj)
 {
+   EINA_SAFETY_ON_NULL_RETURN_VAL(obj, EINA_FALSE);
    return (elm_widget_can_focus_get(obj)) || (elm_widget_child_can_focus_get(obj));
 }
 
@@ -2221,6 +2231,7 @@ EAPI void
 elm_object_focus_custom_chain_set(Evas_Object *obj,
                                   Eina_List   *objs)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
    elm_widget_focus_custom_chain_set(obj, objs);
 }
 
@@ -2233,6 +2244,7 @@ elm_object_focus_custom_chain_set(Evas_Object *obj,
 EAPI void
 elm_object_focus_custom_chain_unset(Evas_Object *obj)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
    elm_widget_focus_custom_chain_unset(obj);
 }
 
@@ -2245,6 +2257,7 @@ elm_object_focus_custom_chain_unset(Evas_Object *obj)
 EAPI const Eina_List *
 elm_object_focus_custom_chain_get(const Evas_Object *obj)
 {
+   EINA_SAFETY_ON_NULL_RETURN_VAL(obj, NULL);
    return elm_widget_focus_custom_chain_get(obj);
 }
 
@@ -2266,6 +2279,8 @@ elm_object_focus_custom_chain_append(Evas_Object *obj,
                                      Evas_Object *child,
                                      Evas_Object *relative_child)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
+   EINA_SAFETY_ON_NULL_RETURN(child);
    elm_widget_focus_custom_chain_append(obj, child, relative_child);
 }
 
@@ -2287,6 +2302,8 @@ elm_object_focus_custom_chain_prepend(Evas_Object *obj,
                                       Evas_Object *child,
                                       Evas_Object *relative_child)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
+   EINA_SAFETY_ON_NULL_RETURN(child);
    elm_widget_focus_custom_chain_prepend(obj, child, relative_child);
 }
 
@@ -2306,6 +2323,7 @@ EAPI void
 elm_object_focus_cycle(Evas_Object        *obj,
                        Elm_Focus_Direction dir)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
    elm_widget_focus_cycle(obj, dir);
 }
 
@@ -2326,6 +2344,7 @@ elm_object_focus_direction_go(Evas_Object *obj,
                               int          x,
                               int          y)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
    elm_widget_focus_direction_go(obj, x, y);
 }
 
@@ -2407,6 +2426,7 @@ elm_focus_highlight_animate_set(Eina_Bool animate)
 EAPI void
 elm_object_scroll_hold_push(Evas_Object *obj)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
    elm_widget_scroll_hold_push(obj);
 }
 
@@ -2422,6 +2442,7 @@ elm_object_scroll_hold_push(Evas_Object *obj)
 EAPI void
 elm_object_scroll_hold_pop(Evas_Object *obj)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
    elm_widget_scroll_hold_pop(obj);
 }
 
@@ -2437,6 +2458,7 @@ elm_object_scroll_hold_pop(Evas_Object *obj)
 EAPI void
 elm_object_scroll_freeze_push(Evas_Object *obj)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
    elm_widget_scroll_freeze_push(obj);
 }
 
@@ -2454,6 +2476,7 @@ EAPI void
 elm_object_scroll_lock_x_set(Evas_Object *obj,
                              Eina_Bool    lock)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
    elm_widget_drag_lock_x_set(obj, lock);
 }
 
@@ -2471,6 +2494,7 @@ EAPI void
 elm_object_scroll_lock_y_set(Evas_Object *obj,
                              Eina_Bool    lock)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
    elm_widget_drag_lock_y_set(obj, lock);
 }
 
@@ -2485,6 +2509,7 @@ elm_object_scroll_lock_y_set(Evas_Object *obj,
 EAPI Eina_Bool
 elm_object_scroll_lock_x_get(const Evas_Object *obj)
 {
+   EINA_SAFETY_ON_NULL_RETURN_VAL(obj, EINA_FALSE);
    return elm_widget_drag_lock_x_get(obj);
 }
 
@@ -2499,6 +2524,7 @@ elm_object_scroll_lock_x_get(const Evas_Object *obj)
 EAPI Eina_Bool
 elm_object_scroll_lock_y_get(const Evas_Object *obj)
 {
+   EINA_SAFETY_ON_NULL_RETURN_VAL(obj, EINA_FALSE);
    return elm_widget_drag_lock_y_get(obj);
 }
 
@@ -2514,6 +2540,7 @@ elm_object_scroll_lock_y_get(const Evas_Object *obj)
 EAPI void
 elm_object_scroll_freeze_pop(Evas_Object *obj)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
    elm_widget_scroll_freeze_pop(obj);
 }
 
@@ -2536,6 +2563,7 @@ elm_object_scroll_freeze_pop(Evas_Object *obj)
 EAPI Eina_Bool
 elm_object_widget_check(const Evas_Object *obj)
 {
+   EINA_SAFETY_ON_NULL_RETURN_VAL(obj, EINA_FALSE);
    return elm_widget_is(obj);
 }
 
@@ -2550,6 +2578,7 @@ elm_object_widget_check(const Evas_Object *obj)
 EAPI Evas_Object *
 elm_object_parent_widget_get(const Evas_Object *obj)
 {
+   EINA_SAFETY_ON_NULL_RETURN_VAL(obj, NULL);
    return elm_widget_parent_widget_get(obj);
 }
 
@@ -2564,6 +2593,7 @@ elm_object_parent_widget_get(const Evas_Object *obj)
 EAPI Evas_Object *
 elm_object_top_widget_get(const Evas_Object *obj)
 {
+   EINA_SAFETY_ON_NULL_RETURN_VAL(obj, NULL);
    return elm_widget_top_get(obj);
 }
 
@@ -2584,6 +2614,7 @@ elm_object_top_widget_get(const Evas_Object *obj)
 EAPI const char *
 elm_object_widget_type_get(const Evas_Object *obj)
 {
+   EINA_SAFETY_ON_NULL_RETURN_VAL(obj, NULL);
    return elm_widget_type_get(obj);
 }
 
@@ -2604,6 +2635,7 @@ elm_object_signal_emit(Evas_Object *obj,
                        const char  *emission,
                        const char  *source)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
    elm_widget_signal_emit(obj, emission, source);
 }
 
@@ -2625,6 +2657,8 @@ elm_object_signal_emit(Evas_Object *obj,
 EAPI void 
 elm_object_signal_callback_add(Evas_Object *obj, const char *emission, const char *source, void (*func) (void *data, Evas_Object *o, const char *emission, const char *source), void *data)
 {
+    EINA_SAFETY_ON_NULL_RETURN(obj);
+    EINA_SAFETY_ON_NULL_RETURN(func);
     elm_widget_signal_callback_add(obj, emission, source, func, data);
 }
 
@@ -2648,6 +2682,8 @@ elm_object_signal_callback_add(Evas_Object *obj, const char *emission, const cha
 EAPI void *
 elm_object_signal_callback_del(Evas_Object *obj, const char *emission, const char *source, void (*func) (void *data, Evas_Object *o, const char *emission, const char *source))
 {
+    EINA_SAFETY_ON_NULL_RETURN_VAL(obj, NULL);
+    EINA_SAFETY_ON_NULL_RETURN_VAL(func, NULL);
     return elm_widget_signal_callback_del(obj, emission, source, func);
 }
 
@@ -2671,6 +2707,8 @@ elm_object_signal_callback_del(Evas_Object *obj, const char *emission, const cha
 EAPI void
 elm_object_event_callback_add(Evas_Object *obj, Elm_Event_Cb func, const void *data)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
+   EINA_SAFETY_ON_NULL_RETURN(func);
    elm_widget_event_callback_add(obj, func, data);
 }
 
@@ -2693,6 +2731,8 @@ elm_object_event_callback_add(Evas_Object *obj, Elm_Event_Cb func, const void *d
 EAPI void *
 elm_object_event_callback_del(Evas_Object *obj, Elm_Event_Cb func, const void *data)
 {
+   EINA_SAFETY_ON_NULL_RETURN_VAL(obj, NULL);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(func, NULL);
    return elm_widget_event_callback_del(obj, func, data);
 }
 
index 61b6c9c..d069e94 100644 (file)
@@ -1674,6 +1674,8 @@ elm_map_add(Evas_Object *parent)
    static Evas_Smart *smart = NULL;
    Eina_Bool bounce = _elm_config->thumbscroll_bounce_enable;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    if (!ecore_file_download_protocol_available("http://"))
      {
        ERR("Ecore must be built with the support of HTTP for the widget map !");
@@ -2321,7 +2323,8 @@ elm_map_marker_add(Evas_Object *obj, double lon, double lat, Elm_Map_Marker_Clas
    Evas_Object *o;
 
    if (!wd) return NULL;
-   if (!clas_group || !clas) return NULL;
+   EINA_SAFETY_ON_NULL_RETURN_VAL(clas_group, NULL);
+   EINA_SAFETY_ON_NULL_RETURN_VAL(clas, NULL);
 
    Elm_Map_Marker *marker = ELM_NEW(Elm_Map_Marker);
 
@@ -2493,7 +2496,7 @@ elm_map_marker_remove(Elm_Map_Marker *marker)
    Eina_List *groups;
    Widget_Data *wd;
 
-   if (!marker) return;
+   EINA_SAFETY_ON_NULL_RETURN(marker);
    wd = marker->wd;
    if (!wd) return;
    for (i = 0; i <= ZOOM_MAX; i++)
@@ -2558,7 +2561,7 @@ elm_map_marker_remove(Elm_Map_Marker *marker)
 EAPI void
 elm_map_marker_bring_in(Elm_Map_Marker *marker)
 {
-   if (!marker) return;
+   EINA_SAFETY_ON_NULL_RETURN(marker);
    elm_map_geo_region_bring_in(marker->wd->obj, marker->longitude, marker->latitude);
 }
 
@@ -2573,7 +2576,7 @@ elm_map_marker_bring_in(Elm_Map_Marker *marker)
 EAPI void
 elm_map_marker_show(Elm_Map_Marker *marker)
 {
-   if (!marker) return;
+   EINA_SAFETY_ON_NULL_RETURN(marker);
    elm_map_geo_region_show(marker->wd->obj, marker->longitude, marker->latitude);
 }
 
@@ -2598,7 +2601,7 @@ elm_map_markers_list_show(Eina_List *markers)
    Evas_Coord rw, rh, xc, yc;
    Widget_Data *wd;
 
-   if (!markers) return;
+   EINA_SAFETY_ON_NULL_RETURN(markers);
 
    EINA_LIST_FOREACH(markers, l, marker)
      {
@@ -2669,7 +2672,7 @@ elm_map_max_marker_per_group_set(Evas_Object *obj, int max)
 EAPI Evas_Object *
 elm_map_marker_object_get(const Elm_Map_Marker *marker)
 {
-   if (!marker) return NULL;
+   EINA_SAFETY_ON_NULL_RETURN_VAL(marker, NULL);
    return marker->content;
 }
 
@@ -2683,7 +2686,7 @@ elm_map_marker_object_get(const Elm_Map_Marker *marker)
 EAPI void
 elm_map_marker_update(Elm_Map_Marker *marker)
 {
-   if (!marker) return;
+   EINA_SAFETY_ON_NULL_RETURN(marker);
    if (marker->content)
      {
        if (marker->clas->func.del)
@@ -2749,7 +2752,7 @@ elm_map_group_class_new(Evas_Object *obj)
 EAPI void
 elm_map_group_class_style_set(Elm_Map_Group_Class *clas, const char *style)
 {
-   if (!clas) return;
+   EINA_SAFETY_ON_NULL_RETURN(clas);
    eina_stringshare_replace(&clas->style, style);
 }
 
@@ -2766,7 +2769,7 @@ elm_map_group_class_style_set(Elm_Map_Group_Class *clas, const char *style)
 EAPI void
 elm_map_group_class_icon_cb_set(Elm_Map_Group_Class *clas, ElmMapGroupIconGetFunc icon_get)
 {
-   if (!clas) return;
+   EINA_SAFETY_ON_NULL_RETURN(clas);
    clas->func.icon_get = icon_get;
 }
 
@@ -2781,7 +2784,7 @@ elm_map_group_class_icon_cb_set(Elm_Map_Group_Class *clas, ElmMapGroupIconGetFun
 EAPI void
 elm_map_group_class_data_set(Elm_Map_Group_Class *clas, void *data)
 {
-   if (!clas) return;
+   EINA_SAFETY_ON_NULL_RETURN(clas);
    clas->data = data;
 }
 
@@ -2798,7 +2801,7 @@ elm_map_group_class_data_set(Elm_Map_Group_Class *clas, void *data)
 EAPI void
 elm_map_group_class_zoom_displayed_set(Elm_Map_Group_Class *clas, int zoom)
 {
-   if (!clas) return;
+   EINA_SAFETY_ON_NULL_RETURN(clas);
    clas->zoom_displayed = zoom;
 }
 
@@ -2813,7 +2816,7 @@ elm_map_group_class_zoom_displayed_set(Elm_Map_Group_Class *clas, int zoom)
 EAPI void
 elm_map_group_class_zoom_grouped_set(Elm_Map_Group_Class *clas, int zoom)
 {
-   if (!clas) return;
+   EINA_SAFETY_ON_NULL_RETURN(clas);
    clas->zoom_grouped = zoom;
 }
 
@@ -2832,7 +2835,7 @@ elm_map_group_class_hide_set(Evas_Object *obj, Elm_Map_Group_Class *clas, Eina_B
    ELM_CHECK_WIDTYPE(obj, widtype);
    Widget_Data *wd = elm_widget_data_get(obj);
    if (!wd) return;
-   if (!clas) return;
+   EINA_SAFETY_ON_NULL_RETURN(clas);
    if (clas->hide == hide) return;
    clas->hide = hide;
    if (wd->grids)
@@ -2877,7 +2880,7 @@ elm_map_marker_class_new(Evas_Object *obj)
 EAPI void
 elm_map_marker_class_style_set(Elm_Map_Marker_Class *clas, const char *style)
 {
-   if (!clas) return;
+   EINA_SAFETY_ON_NULL_RETURN(clas);
    eina_stringshare_replace(&clas->style, style);
 }
 
@@ -2894,7 +2897,7 @@ elm_map_marker_class_style_set(Elm_Map_Marker_Class *clas, const char *style)
 EAPI void
 elm_map_marker_class_icon_cb_set(Elm_Map_Marker_Class *clas, ElmMapMarkerIconGetFunc icon_get)
 {
-   if (!clas) return;
+   EINA_SAFETY_ON_NULL_RETURN(clas);
    clas->func.icon_get = icon_get;
 }
 
@@ -2913,7 +2916,7 @@ elm_map_marker_class_icon_cb_set(Elm_Map_Marker_Class *clas, ElmMapMarkerIconGet
 EAPI void
 elm_map_marker_class_get_cb_set(Elm_Map_Marker_Class *clas, ElmMapMarkerGetFunc get)
 {
-   if (!clas) return;
+   EINA_SAFETY_ON_NULL_RETURN(clas);
    clas->func.get = get;
 }
 
@@ -2931,7 +2934,7 @@ elm_map_marker_class_get_cb_set(Elm_Map_Marker_Class *clas, ElmMapMarkerGetFunc
 EAPI void
 elm_map_marker_class_del_cb_set(Elm_Map_Marker_Class *clas, ElmMapMarkerDelFunc del)
 {
-   if (!clas) return;
+   EINA_SAFETY_ON_NULL_RETURN(clas);
    clas->func.del = del;
 }
 
@@ -3005,7 +3008,8 @@ elm_map_source_get(const Evas_Object *obj)
 EAPI void
 elm_map_source_custom_api_set(Elm_Map_Sources source, const char *name, int zoom_min, int zoom_max, ElmMapSourceURLFunc url_cb)
 {
-   if ((!name) || (!url_cb)) return;
+   EINA_SAFETY_ON_NULL_RETURN(name);
+   EINA_SAFETY_ON_NULL_RETURN(url_cb);
    map_sources_tab[source].name = name;
    map_sources_tab[source].zoom_min = zoom_min;
    map_sources_tab[source].zoom_max = zoom_max;
index 3a01a80..ad1afa2 100644 (file)
@@ -167,6 +167,8 @@ elm_mapbuf_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index ffb90e9..e478aea 100644 (file)
@@ -412,6 +412,8 @@ elm_menu_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
@@ -616,7 +618,7 @@ elm_menu_item_add(Evas_Object *obj, Elm_Menu_Item *parent, const char *icon, con
 
    elm_widget_sub_object_add(subitem->base.widget, subitem->icon);
    edje_object_part_swallow(subitem->base.view, "elm.swallow.content", subitem->icon);
-   elm_menu_item_icon_set(subitem, icon);
+   if (icon) elm_menu_item_icon_set(subitem, icon);
 
    if (parent)
      {
@@ -688,7 +690,8 @@ elm_menu_item_icon_set(Elm_Menu_Item *item, const char *icon)
 {
    char icon_tmp[512];
    ELM_WIDGET_ITEM_WIDTYPE_CHECK_OR_RETURN(item);
-   if ((!icon) || (!*icon)) return;
+   EINA_SAFETY_ON_NULL_RETURN(icon);
+   if (!*icon) return;
    if ((item->icon_str) && (!strcmp(item->icon_str, icon))) return;
    if ((snprintf(icon_tmp, sizeof(icon_tmp), "menu/%s", icon) > 0) &&
        (elm_icon_standard_set(item->icon, icon_tmp)))
index f793339..05f7bf7 100644 (file)
@@ -324,6 +324,8 @@ elm_notify_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index 193a82c..c147503 100644 (file)
@@ -242,6 +242,8 @@ elm_pager_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index d6d2788..ffc7317 100644 (file)
@@ -239,6 +239,8 @@ elm_panel_add(Evas_Object *parent)
    Evas *evas;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    evas = evas_object_evas_get(parent);
    obj = elm_widget_add(evas);
index 071d481..3369f45 100644 (file)
@@ -199,6 +199,8 @@ elm_panes_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index c36ec0e..a543cbe 100644 (file)
@@ -206,6 +206,8 @@ elm_photo_add(Evas_Object *parent)
    Widget_Data *wd;
    Evas_Object *icon;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index 35ab422..c8df8e4 100644 (file)
@@ -975,6 +975,8 @@ elm_photocam_add(Evas_Object *parent)
    static Evas_Smart *smart = NULL;
    Eina_Bool bounce = _elm_config->thumbscroll_bounce_enable;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index a04101f..322086a 100644 (file)
@@ -187,6 +187,8 @@ elm_progressbar_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index 13073db..14a9088 100644 (file)
@@ -272,6 +272,8 @@ elm_radio_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index f683344..aa56634 100644 (file)
@@ -443,6 +443,8 @@ elm_scroller_add(Evas_Object *parent)
    Widget_Data *wd;
    Evas_Coord minw, minh;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
@@ -600,7 +602,8 @@ elm_scroller_custom_widget_base_theme_set(Evas_Object *obj, const char *widget,
    ELM_CHECK_WIDTYPE(obj, widtype);
    Widget_Data *wd = elm_widget_data_get(obj);
    if (!wd) return;
-   if ((!widget) || (!base)) return;
+   EINA_SAFETY_ON_NULL_RETURN(widget);
+   EINA_SAFETY_ON_NULL_RETURN(base);
    if (eina_stringshare_replace(&wd->widget_name, widget) |
        eina_stringshare_replace(&wd->widget_base, base))
      _theme_hook(obj);
index 2fce9c1..14b0d0b 100644 (file)
@@ -70,6 +70,8 @@ elm_separator_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index 57fe93e..3d31151 100644 (file)
@@ -390,6 +390,8 @@ elm_slider_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index 387602e..0910059 100644 (file)
@@ -292,6 +292,8 @@ elm_slideshow_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index a1793bd..6fc84dd 100644 (file)
@@ -559,6 +559,8 @@ elm_spinner_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index 6f444a6..ea5ff66 100644 (file)
@@ -122,6 +122,8 @@ elm_table_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index dbca54d..19a794b 100644 (file)
@@ -282,7 +282,7 @@ elm_theme_new(void)
 EAPI void
 elm_theme_free(Elm_Theme *th)
 {
-   if (!th) return;
+   EINA_SAFETY_ON_NULL_RETURN(th);
    th->ref--;
    if (th->ref < 1)
      {
@@ -841,6 +841,7 @@ elm_theme_name_available_list_free(Eina_List *list)
 EAPI void
 elm_object_theme_set(Evas_Object *obj, Elm_Theme *th)
 {
+   EINA_SAFETY_ON_NULL_RETURN(obj);
    elm_widget_theme_set(obj, th);
 }
 
@@ -860,5 +861,6 @@ elm_object_theme_set(Evas_Object *obj, Elm_Theme *th)
 EAPI Elm_Theme *
 elm_object_theme_get(const Evas_Object *obj)
 {
+   EINA_SAFETY_ON_NULL_RETURN_VAL(obj, NULL);
    return elm_widget_theme_get(obj);
 }
index 35803ab..84bcc39 100644 (file)
@@ -425,6 +425,8 @@ elm_thumb_add(Evas_Object *parent)
    Evas_Object *obj;
    Evas_Coord minw, minh;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    evas = evas_object_evas_get(parent);
    obj = elm_widget_add(evas);
index d614b7b..58d76d2 100644 (file)
@@ -207,6 +207,8 @@ elm_toggle_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
index a3251b2..efb3ae7 100644 (file)
@@ -672,6 +672,8 @@ elm_toolbar_add(Evas_Object *parent)
    Evas *e;
    Widget_Data *wd;
 
+   EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL);
+
    wd = ELM_NEW(Widget_Data);
    e = evas_object_evas_get(parent);
    obj = elm_widget_add(e);
@@ -1775,7 +1777,8 @@ elm_toolbar_menu_parent_set(Evas_Object *obj, Evas_Object *parent)
    ELM_CHECK_WIDTYPE(obj, widtype);
    Widget_Data *wd = elm_widget_data_get(obj);
 
-   if ((!wd) || (!parent)) return;
+   if (!wd) return;
+   EINA_SAFETY_ON_NULL_RETURN(parent);
    wd->menu_parent = parent;
    EINA_INLIST_FOREACH(wd->items, it)
      {
index 242118c..9ac0c82 100644 (file)
@@ -353,6 +353,8 @@ elm_transit_effect_add(Elm_Transit *transit, void (*cb)(void *data, Elm_Transit
 {
    ELM_TRANSIT_CHECK_OR_RETURN(transit);
 
+   EINA_SAFETY_ON_NULL_RETURN(cb);
+
    Elm_Effect *effect;
 
    Eina_List *elist;
@@ -393,6 +395,8 @@ elm_transit_effect_del(Elm_Transit *transit, void (*cb)(void *data, Elm_Transit
 {
    ELM_TRANSIT_CHECK_OR_RETURN(transit);
 
+   EINA_SAFETY_ON_NULL_RETURN(cb);
+
    Eina_List *elist, *elist_next;
    Elm_Effect *effect;
 
@@ -442,7 +446,7 @@ elm_transit_object_add(Elm_Transit *transit, Evas_Object *obj)
 {
    ELM_TRANSIT_CHECK_OR_RETURN(transit);
 
-   if (!obj) return;
+   EINA_SAFETY_ON_NULL_RETURN(obj);
 
    Elm_Obj_Data *obj_data = evas_object_data_get(obj, _transit_key);
 
@@ -486,7 +490,7 @@ elm_transit_object_remove(Elm_Transit *transit, Evas_Object *obj)
 {
    ELM_TRANSIT_CHECK_OR_RETURN(transit);
 
-   if (!obj) return;
+   EINA_SAFETY_ON_NULL_RETURN(obj);
 
    Elm_Obj_Data *obj_data = evas_object_data_get(obj, _transit_key);
 
@@ -594,7 +598,6 @@ elm_transit_del_cb_set(Elm_Transit *transit, void (*cb) (void *data, Elm_Transit
 {
    ELM_TRANSIT_CHECK_OR_RETURN(transit);
 
-   if (!transit) return;
    transit->del_data.func = cb;
    transit->del_data.arg = data;
 }
@@ -787,7 +790,10 @@ elm_transit_effect_resizing_context_free(void *data, Elm_Transit *transit __UNUS
 EAPI void
 elm_transit_effect_resizing_op(void *data, Elm_Transit *transit, double progress)
 {
-   if (!data) return;
+   EINA_SAFETY_ON_NULL_RETURN(data);
+
+   EINA_SAFETY_ON_NULL_RETURN(transit);
+
    Evas_Coord w, h;
    Evas_Object *obj;
    Eina_List *elist;
@@ -923,6 +929,8 @@ _translation_nodes_build(Elm_Transit *transit, Elm_Fx_Translation *translation)
 EAPI void
 elm_transit_effect_translation_context_free(void *data, Elm_Transit *transit __UNUSED__)
 {
+   EINA_SAFETY_ON_NULL_RETURN(data);
+
    Elm_Fx_Translation *translation = data;
    Eina_List *elist, *elist_next;
    Elm_Fx_Translation_Node *translation_node;
@@ -968,7 +976,10 @@ elm_transit_effect_translation_context_free(void *data, Elm_Transit *transit __U
 EAPI void
 elm_transit_effect_translation_op(void *data, Elm_Transit *transit, double progress __UNUSED__)
 {
-   if (!data) return;
+   EINA_SAFETY_ON_NULL_RETURN(data);
+
+   EINA_SAFETY_ON_NULL_RETURN(transit);
+
    Evas_Coord x, y;
    Elm_Fx_Translation *translation = data;
    Elm_Fx_Translation_Node *translation_node;
@@ -1088,7 +1099,10 @@ elm_transit_effect_zoom_context_free(void *data, Elm_Transit *transit __UNUSED__
 EAPI void
 elm_transit_effect_zoom_op(void *data, Elm_Transit *transit , double progress)
 {
-   if (!data) return;
+   EINA_SAFETY_ON_NULL_RETURN(data);
+
+   EINA_SAFETY_ON_NULL_RETURN(transit);
+
    Evas_Object *obj;
    Eina_List *elist;
 
@@ -1177,6 +1191,10 @@ struct _Elm_Fx_Flip
 EAPI void
 elm_transit_effect_flip_context_free(void *data, Elm_Transit *transit)
 {
+   EINA_SAFETY_ON_NULL_RETURN(data);
+
+   EINA_SAFETY_ON_NULL_RETURN(transit);
+
    Evas_Object *front, *back;
    int i;
 
@@ -1228,7 +1246,10 @@ elm_transit_effect_flip_context_free(void *data, Elm_Transit *transit)
 EAPI void
 elm_transit_effect_flip_op(void *data, Elm_Transit *transit, double progress)
 {
-   if (!data) return;
+   EINA_SAFETY_ON_NULL_RETURN(data);
+
+   EINA_SAFETY_ON_NULL_RETURN(transit);
+
    Evas_Object *obj, *front, *back;
    int count;
    int i;
@@ -1512,6 +1533,8 @@ _set_image_uv_by_axis_x(Evas_Map *map, Elm_Fx_ResizableFlip_Node *flip, float de
 EAPI void
 elm_transit_effect_resizable_flip_context_free(void *data, Elm_Transit *transit __UNUSED__)
 {
+   EINA_SAFETY_ON_NULL_RETURN(data);
+
    Elm_Fx_ResizableFlip *resizable_flip = data;
    Eina_List *elist, *elist_next;
    Elm_Fx_ResizableFlip_Node *resizable_flip_node;
@@ -1569,7 +1592,7 @@ elm_transit_effect_resizable_flip_context_free(void *data, Elm_Transit *transit
 EAPI void
 elm_transit_effect_resizable_flip_op(void *data, Elm_Transit *transit __UNUSED__, double progress)
 {
-   if (!data) return;
+   EINA_SAFETY_ON_NULL_RETURN(data);
 
    Evas_Map *map;
    Evas_Object *obj;
@@ -1839,6 +1862,10 @@ _elm_fx_wipe_show(Evas_Map *map, Elm_Fx_Wipe_Dir dir, float x, float y, float w,
 EAPI void
 elm_transit_effect_wipe_context_free(void *data, Elm_Transit *transit)
 {
+   EINA_SAFETY_ON_NULL_RETURN(data);
+
+   EINA_SAFETY_ON_NULL_RETURN(transit);
+
    Eina_List *elist;
    Evas_Object *obj;
    Elm_Fx_Wipe *wipe = data;
@@ -1885,7 +1912,10 @@ elm_transit_effect_wipe_context_free(void *data, Elm_Transit *transit)
 EAPI void
 elm_transit_effect_wipe_op(void *data, Elm_Transit *transit, double progress)
 {
-   if (!data) return;
+   EINA_SAFETY_ON_NULL_RETURN(data);
+
+   EINA_SAFETY_ON_NULL_RETURN(transit);
+
    Elm_Fx_Wipe *wipe = data;
 
    Evas_Map *map;
@@ -2016,7 +2046,10 @@ elm_transit_effect_color_context_free(void *data, Elm_Transit *transit __UNUSED_
 EAPI void
 elm_transit_effect_color_op(void *data, Elm_Transit *transit, double progress)
 {
-   if (!data) return;
+   EINA_SAFETY_ON_NULL_RETURN(data);
+
+   EINA_SAFETY_ON_NULL_RETURN(transit);
+
    Elm_Fx_Color *color = data;
    Evas_Object *obj;
    Eina_List *elist;
@@ -2183,6 +2216,8 @@ _fade_nodes_build(Elm_Transit *transit, Elm_Fx_Fade *fade_data)
 EAPI void
 elm_transit_effect_fade_context_free(void *data, Elm_Transit *transit __UNUSED__)
 {
+   EINA_SAFETY_ON_NULL_RETURN(data);
+
    Elm_Fx_Fade *fade = data;
    Elm_Fx_Fade_Node *fade_node;
    Eina_List *elist, *elist_next;
@@ -2246,7 +2281,7 @@ elm_transit_effect_fade_context_free(void *data, Elm_Transit *transit __UNUSED__
 EAPI void
 elm_transit_effect_fade_op(void *data, Elm_Transit *transit __UNUSED__, double progress)
 {
-   if (!data) return;
+   EINA_SAFETY_ON_NULL_RETURN(data);
 
    Elm_Fx_Fade *fade = data;
    Eina_List *elist;
@@ -2425,6 +2460,8 @@ _blend_nodes_build(Elm_Transit *transit, Elm_Fx_Blend *blend)
 EAPI void
 elm_transit_effect_blend_context_free(void *data, Elm_Transit *transit __UNUSED__)
 {
+   EINA_SAFETY_ON_NULL_RETURN(data);
+
    Elm_Fx_Blend *blend = data;
    Elm_Fx_Blend_Node *blend_node;
    Eina_List *elist, *elist_next;
@@ -2491,7 +2528,10 @@ elm_transit_effect_blend_context_free(void *data, Elm_Transit *transit __UNUSED_
 EAPI void
 elm_transit_effect_blend_op(void *data, Elm_Transit *transit, double progress)
 {
-   if (!data) return;
+   EINA_SAFETY_ON_NULL_RETURN(data);
+
+   EINA_SAFETY_ON_NULL_RETURN(transit);
+
    Elm_Fx_Blend *blend = data;
    Elm_Fx_Blend_Node *blend_node;
    Eina_List *elist;
@@ -2609,7 +2649,10 @@ elm_transit_effect_rotation_context_free(void *data, Elm_Transit *transit __UNUS
 EAPI void
 elm_transit_effect_rotation_op(void *data, Elm_Transit *transit, double progress)
 {
-   if (!data) return;
+   EINA_SAFETY_ON_NULL_RETURN(data);
+
+   EINA_SAFETY_ON_NULL_RETURN(transit);
+
    Elm_Fx_Rotation *rotation = data;
 
    Evas_Map *map;
@@ -2715,6 +2758,8 @@ struct _Elm_Fx_Image_Animation
 EAPI void
 elm_transit_effect_image_animation_context_free(void *data, Elm_Transit *transit __UNUSED__)
 {
+   EINA_SAFETY_ON_NULL_RETURN(data);
+
    Elm_Fx_Image_Animation *image_animation = data;
 
    const char *image;
@@ -2759,7 +2804,10 @@ elm_transit_effect_image_animation_context_free(void *data, Elm_Transit *transit
 EAPI void
 elm_transit_effect_image_animation_op(void *data, Elm_Transit *transit, double progress)
 {
-   if (!data) return;
+   EINA_SAFETY_ON_NULL_RETURN(data);
+
+   EINA_SAFETY_ON_NULL_RETURN(transit);
+
    Eina_List *elist;
    Evas_Object *obj;
    const char *type;
index 9395749..2e65538 100644 (file)
@@ -902,6 +902,7 @@ EAPI void
 elm_widget_event_callback_add(Evas_Object *obj, Elm_Event_Cb func, const void *data)
 {
    API_ENTRY return;
+   EINA_SAFETY_ON_NULL_RETURN(func);
    Elm_Event_Cb_Data *ecb = ELM_NEW(Elm_Event_Cb_Data);
    ecb->func = func;
    ecb->data = data;
@@ -912,6 +913,7 @@ EAPI void *
 elm_widget_event_callback_del(Evas_Object *obj, Elm_Event_Cb func, const void *data)
 {
    API_ENTRY return NULL;
+   EINA_SAFETY_ON_NULL_RETURN_VAL(func, NULL);
    Eina_List *l;
    Elm_Event_Cb_Data *ecd;
    EINA_LIST_FOREACH(sd->event_cb, l, ecd)
@@ -1040,6 +1042,7 @@ EAPI void
 elm_widget_focus_custom_chain_append(Evas_Object *obj, Evas_Object *child, Evas_Object *relative_child)
 {
    API_ENTRY return;
+   EINA_SAFETY_ON_NULL_RETURN(child);
    if (!sd->focus_next_func)
      return;
 
@@ -1073,6 +1076,7 @@ EAPI void
 elm_widget_focus_custom_chain_prepend(Evas_Object *obj, Evas_Object *child, Evas_Object *relative_child)
 {
    API_ENTRY return;
+   EINA_SAFETY_ON_NULL_RETURN(child);
    if (!sd->focus_next_func)
      return;
 
@@ -1450,6 +1454,7 @@ elm_widget_signal_callback_add(Evas_Object *obj, const char *emission, const cha
    Edje_Signal_Data *esd;
    API_ENTRY return;
    if (!sd->callback_add_func) return;
+   EINA_SAFETY_ON_NULL_RETURN(func);
 
    esd = ELM_NEW(Edje_Signal_Data);
    if (!esd) return;