bu5hm4n pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=586f8ae9571d34eaa32007019e13b239e707f081
commit 586f8ae9571d34eaa32007019e13b239e707f081 Author: Hosang Kim <hosang12....@samsung.com> Date: Mon Aug 27 07:17:13 2018 +0000 efl_input: fix problem that ref count does not become 0. 1.fix reusing instance logic. 2.remove efl_ref() when default devices are created. Differential Revision: https://phab.enlightenment.org/D6882 --- src/lib/evas/canvas/efl_input_event.c | 6 +++--- src/lib/evas/canvas/evas_main.c | 26 +++++++++++++------------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/src/lib/evas/canvas/efl_input_event.c b/src/lib/evas/canvas/efl_input_event.c index 9bd5151a07..1a172166b1 100644 --- a/src/lib/evas/canvas/efl_input_event.c +++ b/src/lib/evas/canvas/efl_input_event.c @@ -117,9 +117,9 @@ efl_input_event_instance_get(Eo *klass, Eo *owner) } else { - evt = efl_add(klass, owner, - efl_event_callback_add(efl_added, EFL_EVENT_NOREF, _noref_death, NULL), - efl_del_intercept_set(efl_added, _del_hook)); + evt = efl_add(klass, owner); + efl_event_callback_add(evt, EFL_EVENT_NOREF, _noref_death, NULL); + efl_del_intercept_set(evt, _del_hook); } return efl_ref(evt); diff --git a/src/lib/evas/canvas/evas_main.c b/src/lib/evas/canvas/evas_main.c index f5917d2ede..9af9f016dc 100644 --- a/src/lib/evas/canvas/evas_main.c +++ b/src/lib/evas/canvas/evas_main.c @@ -1248,20 +1248,20 @@ evas_output_method_set(Evas *eo_e, int render_method) return; } - e->default_seat = efl_ref(evas_device_add_full(eo_e, "default", "The default seat", - NULL, NULL, EVAS_DEVICE_CLASS_SEAT, - EVAS_DEVICE_SUBCLASS_NONE)); + e->default_seat = evas_device_add_full(eo_e, "default", "The default seat", + NULL, NULL, EVAS_DEVICE_CLASS_SEAT, + EVAS_DEVICE_SUBCLASS_NONE); evas_device_seat_id_set(e->default_seat, 1); - e->default_mouse = efl_ref(evas_device_add_full(eo_e, "Mouse", - "The default mouse", - e->default_seat, NULL, - EVAS_DEVICE_CLASS_MOUSE, - EVAS_DEVICE_SUBCLASS_NONE)); - e->default_keyboard = efl_ref(evas_device_add_full(eo_e, "Keyboard", - "The default keyboard", - e->default_seat, NULL, - EVAS_DEVICE_CLASS_KEYBOARD, - EVAS_DEVICE_SUBCLASS_NONE)); + e->default_mouse = evas_device_add_full(eo_e, "Mouse", + "The default mouse", + e->default_seat, NULL, + EVAS_DEVICE_CLASS_MOUSE, + EVAS_DEVICE_SUBCLASS_NONE); + e->default_keyboard = evas_device_add_full(eo_e, "Keyboard", + "The default keyboard", + e->default_seat, NULL, + EVAS_DEVICE_CLASS_KEYBOARD, + EVAS_DEVICE_SUBCLASS_NONE); } EAPI int --