From 16f687b87a6f838915b93d845af97af5e8369d71 Mon Sep 17 00:00:00 2001 From: Daniel Juyung Seo Date: Mon, 6 Jan 2014 23:26:46 +0900 Subject: [PATCH] multibuttonentry, genlist, layout, toolbar: Fixed dereference of null pointers which were reported by clang builg. https://build.enlightenment.org/job/nightly_elm_clang_x86_64/lastSuccessfulBuild/artifact/scan-build/build/2014-01-05-1/report-XZo1hW.html#EndPath https://build.enlightenment.org/job/nightly_elm_clang_x86_64/lastSuccessfulBuild/artifact/scan-build/build/2014-01-05-1/report-isAlRt.html#EndPath https://build.enlightenment.org/job/nightly_elm_clang_x86_64/lastSuccessfulBuild/artifact/scan-build/build/2014-01-05-1/report-8Ascv8.html#EndPath https://build.enlightenment.org/job/nightly_elm_clang_x86_64/lastSuccessfulBuild/artifact/scan-build/build/2014-01-05-1/report-gBkVuE.html#EndPath --- legacy/elementary/src/lib/elc_multibuttonentry.c | 2 +- legacy/elementary/src/lib/elm_genlist.c | 2 +- legacy/elementary/src/lib/elm_layout.c | 2 +- legacy/elementary/src/lib/elm_toolbar.c | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/legacy/elementary/src/lib/elc_multibuttonentry.c b/legacy/elementary/src/lib/elc_multibuttonentry.c index 52903ca978..ac9ce37eea 100644 --- a/legacy/elementary/src/lib/elc_multibuttonentry.c +++ b/legacy/elementary/src/lib/elc_multibuttonentry.c @@ -1606,7 +1606,7 @@ _elm_multibuttonentry_smart_focus_next(Eo *obj, void *_pd, va_list *list) items = eina_list_append(items, sd->box); } - if (int_ret) + if (int_ret && ret) *ret = elm_widget_focus_list_next_get (obj, items, eina_list_data_get, dir, next); } diff --git a/legacy/elementary/src/lib/elm_genlist.c b/legacy/elementary/src/lib/elm_genlist.c index 304318d2d8..c206eaa400 100644 --- a/legacy/elementary/src/lib/elm_genlist.c +++ b/legacy/elementary/src/lib/elm_genlist.c @@ -5947,7 +5947,7 @@ _realized_items_get(Eo *obj EINA_UNUSED, void *_pd, va_list *list) done = EINA_TRUE; EINA_LIST_FOREACH(itb->items, l, it) { - if (it->realized) *ret = eina_list_append(*ret, it); + if (it->realized && ret) *ret = eina_list_append(*ret, it); } } else diff --git a/legacy/elementary/src/lib/elm_layout.c b/legacy/elementary/src/lib/elm_layout.c index 56b78b9671..c4d2846069 100644 --- a/legacy/elementary/src/lib/elm_layout.c +++ b/legacy/elementary/src/lib/elm_layout.c @@ -1192,7 +1192,7 @@ _elm_layout_smart_content_swallow_list_get(Eo *obj EINA_UNUSED, void *_pd, va_li EINA_LIST_FOREACH(sd->subs, l, sub_d) { - if (sub_d->type == SWALLOW) + if ((sub_d->type == SWALLOW) && ret) *ret = eina_list_append(*ret, sub_d->obj); } } diff --git a/legacy/elementary/src/lib/elm_toolbar.c b/legacy/elementary/src/lib/elm_toolbar.c index 545e09d326..8bbbbada48 100644 --- a/legacy/elementary/src/lib/elm_toolbar.c +++ b/legacy/elementary/src/lib/elm_toolbar.c @@ -2951,7 +2951,7 @@ _item_insert_after(Eo *obj, void *_pd, va_list *list) _sizing_eval(obj); sd->item_count++; - *ret = (Elm_Object_Item *)it; + if (ret) *ret = (Elm_Object_Item *)it; } EAPI Elm_Object_Item *