cedric pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=bc18b7e7ad1f8c5d587400b27fabab0865017011
commit bc18b7e7ad1f8c5d587400b27fabab0865017011 Author: Cedric BAIL <[email protected]> Date: Tue Mar 20 13:21:19 2018 -0400 efl: replace efl_del with efl_unref for cases where no parent exists Signed-off-by: Mike Blumenkrantz <[email protected]> --- src/lib/ecore/efl_model_accessor_view.c | 2 +- src/lib/ecore_con/ecore_con_legacy.c | 5 ++-- src/lib/ecore_evas/ecore_evas.c | 2 +- src/lib/edje/edje_part_helper.h | 2 +- src/lib/evas/canvas/efl_input_focus.c | 7 ++++-- src/lib/evas/canvas/efl_input_key.c | 7 ++++-- src/lib/evas/canvas/efl_input_pointer.c | 7 ++++-- src/lib/evas/canvas/evas_events.c | 42 ++++++++++++++++----------------- src/lib/evas/filters/evas_filter.c | 2 +- src/tests/eo/suite/eo_test_general.c | 4 ++-- 10 files changed, 45 insertions(+), 35 deletions(-) diff --git a/src/lib/ecore/efl_model_accessor_view.c b/src/lib/ecore/efl_model_accessor_view.c index 2afe1dc8f3..a73e9459a5 100644 --- a/src/lib/ecore/efl_model_accessor_view.c +++ b/src/lib/ecore/efl_model_accessor_view.c @@ -68,7 +68,7 @@ _efl_model_acessor_free(Efl_Model_Accessor *acc) EINA_ARRAY_ITER_NEXT(acc->children, i, item, iterator) { - efl_del(item); + efl_unref(item); } eina_array_free(acc->children); acc->children = NULL; diff --git a/src/lib/ecore_con/ecore_con_legacy.c b/src/lib/ecore_con/ecore_con_legacy.c index ecdb187761..8b5055589c 100644 --- a/src/lib/ecore_con/ecore_con_legacy.c +++ b/src/lib/ecore_con/ecore_con_legacy.c @@ -277,12 +277,13 @@ _ecore_con_client_free(Ecore_Con_Client *cl) if (cl->socket) { - Eo *inner_socket = efl_io_buffered_stream_inner_io_get(cl->socket); + Eo *parent, *inner_socket = efl_io_buffered_stream_inner_io_get(cl->socket); efl_event_callback_array_del(cl->socket, _ecore_con_client_socket_cbs(), cl); if (efl_isa(inner_socket, EFL_NET_SOCKET_SSL_CLASS)) efl_event_callback_array_del(inner_socket, _ecore_con_client_socket_ssl_cbs(), cl); - if (efl_parent_get(cl->socket) != cl->svr->server) + parent = efl_parent_get(cl->socket); + if (parent && (parent != cl->svr->server)) efl_del(cl->socket); /* we own it */ else efl_unref(cl->socket); diff --git a/src/lib/ecore_evas/ecore_evas.c b/src/lib/ecore_evas/ecore_evas.c index 4348da8084..f20bd0b9aa 100644 --- a/src/lib/ecore_evas/ecore_evas.c +++ b/src/lib/ecore_evas/ecore_evas.c @@ -4695,7 +4695,7 @@ _direct_mouse_updown(Ecore_Evas *ee, const Ecore_Event_Mouse_Button *info, Efl_P efl_event_callback_legacy_call(e, _event_description_get(ev->action), evt); processed = ev->evas_done; - efl_del(evt); + efl_unref(evt); return processed; } diff --git a/src/lib/edje/edje_part_helper.h b/src/lib/edje/edje_part_helper.h index 0af166aef7..cfe31e7eb1 100644 --- a/src/lib/edje/edje_part_helper.h +++ b/src/lib/edje/edje_part_helper.h @@ -52,7 +52,7 @@ _part_proxy_del_cb(Eo *proxy, Eo **static_var) do { if (PROXY_STATIC_VAR(type)) \ { \ efl_del_intercept_set(PROXY_STATIC_VAR(type), NULL); \ - efl_del(PROXY_STATIC_VAR(type)); \ + efl_unref(PROXY_STATIC_VAR(type)); \ PROXY_STATIC_VAR(type) = NULL; \ } } while (0) diff --git a/src/lib/evas/canvas/efl_input_focus.c b/src/lib/evas/canvas/efl_input_focus.c index abf1c735ae..239b5309b3 100644 --- a/src/lib/evas/canvas/efl_input_focus.c +++ b/src/lib/evas/canvas/efl_input_focus.c @@ -32,7 +32,7 @@ _del_hook(Eo *evt) else { efl_del_intercept_set(evt, NULL); - efl_del(evt); + efl_unref(evt); } } @@ -64,7 +64,10 @@ _efl_input_focus_class_destructor(Efl_Class *klass EINA_UNUSED) { // this is a strange situation... efl_del_intercept_set(s_cached_event, NULL); - efl_del(s_cached_event); + if (efl_parent_get(s_cached_event)) + efl_del(s_cached_event); + else + efl_unref(s_cached_event); s_cached_event = NULL; } diff --git a/src/lib/evas/canvas/efl_input_key.c b/src/lib/evas/canvas/efl_input_key.c index c6b8061211..c2cff2add5 100644 --- a/src/lib/evas/canvas/efl_input_key.c +++ b/src/lib/evas/canvas/efl_input_key.c @@ -31,7 +31,7 @@ _del_hook(Eo *evt) else { efl_del_intercept_set(evt, NULL); - efl_del(evt); + efl_unref(evt); } } @@ -75,7 +75,10 @@ _efl_input_key_class_destructor(Efl_Class *klass EINA_UNUSED) { // this is a strange situation... efl_del_intercept_set(s_cached_event, NULL); - efl_del(s_cached_event); + if (efl_parent_get(s_cached_event)) + efl_del(s_cached_event); + else + efl_unref(s_cached_event); s_cached_event = NULL; } diff --git a/src/lib/evas/canvas/efl_input_pointer.c b/src/lib/evas/canvas/efl_input_pointer.c index 282ffeaf8d..d2e565f2a7 100644 --- a/src/lib/evas/canvas/efl_input_pointer.c +++ b/src/lib/evas/canvas/efl_input_pointer.c @@ -42,7 +42,7 @@ _del_hook(Eo *evt) else { efl_del_intercept_set(evt, NULL); - efl_del(evt); + efl_unref(evt); } } @@ -105,7 +105,10 @@ _efl_input_pointer_class_destructor(Efl_Class *klass EINA_UNUSED) { // this is a strange situation... efl_del_intercept_set(s_cached_event, NULL); - efl_del(s_cached_event); + if (efl_parent_get(s_cached_event)) + efl_del(s_cached_event); + else + efl_unref(s_cached_event); s_cached_event = NULL; } diff --git a/src/lib/evas/canvas/evas_events.c b/src/lib/evas/canvas/evas_events.c index 148ac173bc..71eb04682a 100644 --- a/src/lib/evas/canvas/evas_events.c +++ b/src/lib/evas/canvas/evas_events.c @@ -551,7 +551,7 @@ _evas_event_source_mouse_down_events(Evas_Object *eo_obj, Evas *eo_e, } eina_list_free(copy); - efl_del(evt); + efl_unref(evt); } static void @@ -765,7 +765,7 @@ _evas_event_source_mouse_move_events(Evas_Object *eo_obj, Evas *eo_e, } } - efl_del(evt); + efl_unref(evt); } static void @@ -833,7 +833,7 @@ _evas_event_source_mouse_up_events(Evas_Object *eo_obj, Evas *eo_e, } eina_list_free(copy); - efl_del(evt); + efl_unref(evt); } static void @@ -915,7 +915,7 @@ _evas_event_source_wheel_events(Evas_Object *eo_obj, Evas *eo_e, } eina_list_free(copy); - efl_del(evt); + efl_unref(evt); } static void @@ -983,7 +983,7 @@ _evas_event_source_multi_down_events(Evas_Object_Protected_Data *obj, Evas_Publi } eina_list_free(copy); - efl_del(evt); + efl_unref(evt); } static void @@ -1041,7 +1041,7 @@ _evas_event_source_multi_up_events(Evas_Object_Protected_Data *obj, Evas_Public_ } eina_list_free(copy); - efl_del(evt); + efl_unref(evt); } static void @@ -1156,7 +1156,7 @@ _evas_event_source_multi_move_events(Evas_Object_Protected_Data *obj, Evas_Publi eina_list_free(ins); } - efl_del(evt); + efl_unref(evt); } static void @@ -1246,7 +1246,7 @@ _evas_event_source_mouse_in_events(Evas_Object *eo_obj, Evas *eo_e, } EINA_COW_WRITE_END(evas_object_proxy_cow, src->proxy, proxy_write); - efl_del(evt); + efl_unref(evt); } static void @@ -1307,7 +1307,7 @@ _evas_event_source_mouse_out_events(Evas_Object *eo_obj, Evas *eo_e, proxy_write->src_event_in = eina_list_free(proxy_write->src_event_in); EINA_COW_WRITE_END(evas_object_proxy_cow, src->proxy, proxy_write); - efl_del(evt); + efl_unref(evt); } static Eina_List * @@ -1701,7 +1701,7 @@ _post_up_handle(Evas_Public_Data *e, Efl_Input_Pointer *parent_ev, if (pdata->seat->inside) _evas_canvas_event_pointer_move_event_dispatch(e, pdata, ev->data); - efl_del(evt); + efl_unref(evt); } static void @@ -1850,7 +1850,7 @@ _canvas_event_feed_mouse_updown(Eo *eo_e, int b, Evas_Button_Flags flags, else _canvas_event_feed_mouse_up_internal(e, ev); - efl_del(evt); + efl_unref(evt); } static void @@ -1952,7 +1952,7 @@ evas_event_feed_mouse_cancel(Eo *eo_e, unsigned int timestamp, const void *data) _canvas_event_feed_mouse_cancel_internal(e, ev); - efl_del(evt); + efl_unref(evt); } static void @@ -2024,7 +2024,7 @@ _canvas_event_feed_mouse_wheel_internal(Eo *eo_e, Efl_Input_Pointer_Data *pe) eina_list_free(copy); _evas_post_event_callback_call(eo_e, e, event_id); - efl_del(evt); + efl_unref(evt); _evas_unwalk(e); } @@ -2044,7 +2044,7 @@ evas_event_feed_mouse_wheel(Eo *eo_e, int direction, int z, unsigned int timesta ev->device = efl_ref(_evas_event_legacy_device_get(eo_e, EINA_TRUE)); _canvas_event_feed_mouse_wheel_internal(eo_e, ev); - efl_del(evt); + efl_unref(evt); } static void @@ -2485,7 +2485,7 @@ _canvas_event_feed_mouse_move_legacy(Evas *eo_e, Evas_Public_Data *e, int x, int _canvas_event_feed_mouse_move_internal(e, ev); - efl_del(evt); + efl_unref(evt); } EAPI void @@ -2713,7 +2713,7 @@ _canvas_event_feed_mouse_inout_legacy(Eo *eo_e, unsigned int timestamp, else _canvas_event_feed_mouse_out_internal(eo_e, ev); - efl_del(evt); + efl_unref(evt); } EAPI void @@ -2961,7 +2961,7 @@ _canvas_event_feed_multi_internal(Evas *eo_e, Evas_Public_Data *e, default: break; } - efl_del(evt); + efl_unref(evt); } EAPI void @@ -3414,7 +3414,7 @@ _canvas_event_feed_key_legacy(Eo *eo_e, Evas_Public_Data *e, else _canvas_event_feed_key_up_internal(e, ev); - efl_del(evt); + efl_unref(evt); } EAPI void @@ -3502,7 +3502,7 @@ evas_event_feed_hold(Eo *eo_e, int hold, unsigned int timestamp, const void *dat _evas_unwalk(e); _evas_object_event_new(); - efl_del(evt); + efl_unref(evt); } void @@ -3671,7 +3671,7 @@ evas_event_feed_axis_update(Evas *eo_e, unsigned int timestamp, int device, int _canvas_event_feed_axis_update_internal(e, ev); - efl_del(evt); + efl_unref(evt); } static void @@ -4194,7 +4194,7 @@ _evas_canvas_event_pointer_move_event_dispatch(Evas_Public_Data *edata, _canvas_event_feed_mouse_move_internal(edata, ev); - efl_del(evt); + efl_unref(evt); } void diff --git a/src/lib/evas/filters/evas_filter.c b/src/lib/evas/filters/evas_filter.c index 135d20b2bc..fcbad016f2 100644 --- a/src/lib/evas/filters/evas_filter.c +++ b/src/lib/evas/filters/evas_filter.c @@ -116,7 +116,7 @@ static void _filter_buffer_backing_free(Evas_Filter_Buffer *fb) { if (!fb || !fb->buffer) return; - efl_del(fb->buffer); + efl_unref(fb->buffer); fb->buffer = NULL; } diff --git a/src/tests/eo/suite/eo_test_general.c b/src/tests/eo/suite/eo_test_general.c index 169db5b889..a9cba7d449 100644 --- a/src/tests/eo/suite/eo_test_general.c +++ b/src/tests/eo/suite/eo_test_general.c @@ -656,7 +656,7 @@ START_TEST(efl_refs) fail_if(!efl_invalidated_get(obj3)); efl_unref(obj); - efl_del(obj2); + efl_unref(obj2); efl_unref(obj3); /* Setting and removing parents for add_ref */ @@ -681,7 +681,7 @@ START_TEST(efl_refs) fail_if(!efl_invalidated_get(obj3)); efl_unref(obj); - efl_del(obj2); + efl_unref(obj2); efl_unref(obj3); /* Just check it doesn't seg atm. */ --
