raster pushed a commit to branch efl-1.22. http://git.enlightenment.org/core/efl.git/commit/?id=92dbf3dc830b156deb5d1c0d2190436eab3dd06a
commit 92dbf3dc830b156deb5d1c0d2190436eab3dd06a Author: Carsten Haitzler (Rasterman) <[email protected]> Date: Sun Aug 18 10:28:51 2019 +0100 elm slider - delete timers on destruction that should be deleted also use safe free to set to null --- src/lib/elementary/elm_slider.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/lib/elementary/elm_slider.c b/src/lib/elementary/elm_slider.c index 25c48595fd..0d429d1879 100644 --- a/src/lib/elementary/elm_slider.c +++ b/src/lib/elementary/elm_slider.c @@ -61,6 +61,7 @@ _delay_change(void *data) { ELM_SLIDER_DATA_GET(data, sd); + if (!sd) return ECORE_CALLBACK_CANCEL; sd->delay = NULL; efl_event_callback_legacy_call(data, EFL_UI_SLIDER_EVENT_DELAY_CHANGED, NULL); @@ -1005,15 +1006,16 @@ EOLIAN static void _elm_slider_efl_object_destructor(Eo *obj, Elm_Slider_Data *sd) { - ecore_timer_del(sd->wheel_indicator_timer); - evas_object_del(sd->popup); - evas_object_del(sd->popup2); + ELM_SAFE_FREE(sd->delay, ecore_timer_del); + ELM_SAFE_FREE(sd->wheel_indicator_timer, ecore_timer_del); + ELM_SAFE_FREE(sd->popup, evas_object_del); + ELM_SAFE_FREE(sd->popup2, evas_object_del); ELM_SAFE_FREE(sd->indi_template, eina_stringshare_del); - eina_strbuf_free(sd->indi_format_strbuf); + ELM_SAFE_FREE(sd->indi_format_strbuf, eina_strbuf_free); efl_ui_format_cb_set(obj, NULL, NULL, NULL); - eina_strbuf_free(sd->format_strbuf); + ELM_SAFE_FREE(sd->format_strbuf, eina_strbuf_free); efl_destructor(efl_super(obj, MY_CLASS)); } --
