hermet pushed a commit to branch master. http://git.enlightenment.org/core/elementary.git/commit/?id=823c7b87be84b623a3c81dbcf0537bd192d43713
commit 823c7b87be84b623a3c81dbcf0537bd192d43713 Author: Amitesh Singh <[email protected]> Date: Sun Oct 19 14:55:02 2014 +0900 widget: fix seg fault when ts is NULL. Summary: if translatable is FALSE and _translate_string_data_get returns NULL, ts would be NULL which results into crash. @fix Reviewers: seoz, raster, Hermet Reviewed By: Hermet Subscribers: seoz Differential Revision: https://phab.enlightenment.org/D1543 --- src/lib/elm_widget.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/src/lib/elm_widget.c b/src/lib/elm_widget.c index ab312b9..adf68df 100644 --- a/src/lib/elm_widget.c +++ b/src/lib/elm_widget.c @@ -3218,16 +3218,13 @@ _part_text_translatable_set(Eina_Inlist **translate_strings, const char *part, E } //Delete this exist one if this part has been not preset. //see elm_widget_part_text_translatable_set() - else if ((preset) || (!ts->preset)) + else if (ts && ((preset) || (!ts->preset))) { - if (ts) - { - t = eina_inlist_remove(t, EINA_INLIST_GET(ts)); - eina_stringshare_del(ts->id); - eina_stringshare_del(ts->domain); - eina_stringshare_del(ts->string); - ELM_SAFE_FREE(ts, free); - } + t = eina_inlist_remove(t, EINA_INLIST_GET(ts)); + eina_stringshare_del(ts->id); + eina_stringshare_del(ts->domain); + eina_stringshare_del(ts->string); + ELM_SAFE_FREE(ts, free); } *translate_strings = t; --
