bdilly pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=cb6b049987d0d34e9415cea37cb59e7b96951685
commit cb6b049987d0d34e9415cea37cb59e7b96951685 Author: Guilherme Iscaro <[email protected]> Date: Thu Oct 20 15:33:06 2016 -0200 Efl Input Hold: Increment/Decrement the device reference. --- src/lib/evas/canvas/efl_input_hold.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/lib/evas/canvas/efl_input_hold.c b/src/lib/evas/canvas/efl_input_hold.c index 4c509dc..774af38 100644 --- a/src/lib/evas/canvas/efl_input_hold.c +++ b/src/lib/evas/canvas/efl_input_hold.c @@ -26,7 +26,7 @@ _efl_input_hold_hold_get(Eo *obj EINA_UNUSED, Efl_Input_Hold_Data *pd) EOLIAN static void _efl_input_hold_efl_input_event_device_set(Eo *obj EINA_UNUSED, Efl_Input_Hold_Data *pd, Efl_Input_Device *dev) { - pd->device = dev; + pd->device = efl_ref(dev); } EOLIAN static Efl_Input_Device * @@ -70,6 +70,7 @@ _efl_input_hold_efl_object_constructor(Eo *obj, Efl_Input_Hold_Data *pd EINA_UNU static inline void _efl_input_hold_free(Efl_Input_Hold_Data *pd) { + efl_unref(pd->device); free(pd->legacy); } @@ -110,7 +111,7 @@ _efl_input_hold_efl_input_event_dup(Eo *obj, Efl_Input_Hold_Data *pd) ev->timestamp = pd->timestamp; ev->data = pd->data; ev->hold = pd->hold; - ev->device = pd->device; // lacks a proper ref :( + ev->device = efl_ref(pd->device); return evt; } --
