cedric pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=6960751c4580af9e902cd7719c1acafab4ce7bc5

commit 6960751c4580af9e902cd7719c1acafab4ce7bc5
Author: Marcel Hollerbach <m...@marcel-hollerbach.de>
Date:   Thu Sep 19 14:43:31 2019 +0200

    elm_test_widget_focus: cleanup callbacks correctly
    
    we need to delete the callback here, otherwise the objects are deleted
    later on, which:
    - changes focus, which leads to
    - callbacks executed with stacked addresses from a dead function
    
    this fixes a testsuite failure on the release build.
    
    Reviewed-by: Mike Blumenkrantz <michael.blumenkra...@gmail.com>
    Reviewed-by: Stefan Schmidt <ste...@datenfreihafen.org>
    Differential Revision: https://phab.enlightenment.org/D10020
---
 src/tests/elementary/elm_test_widget_focus.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/tests/elementary/elm_test_widget_focus.c 
b/src/tests/elementary/elm_test_widget_focus.c
index d41889b86e..fb2a5a2678 100644
--- a/src/tests/elementary/elm_test_widget_focus.c
+++ b/src/tests/elementary/elm_test_widget_focus.c
@@ -201,6 +201,8 @@ EFL_START_TEST(elm_test_widget_focus_simple_widget)
          ck_assert_int_eq(flag_unfocused, EINA_TRUE);
          ck_assert_int_eq(elm_object_focus_get(resettor), EINA_TRUE);
          ck_assert_int_eq(elm_object_focus_get(o), EINA_FALSE);
+         evas_object_smart_callback_del_full(o, "focused", _eventing_test, 
&flag_focused);
+         evas_object_smart_callback_del_full(o, "unfocused", _eventing_test, 
&flag_unfocused);
       }
 
    eina_hash_free(map);

-- 


Reply via email to