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

-- 


Reply via email to