summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorTom Hacohen <tom@stosb.com>2016-03-11 12:24:08 +0000
committerTom Hacohen <tom@stosb.com>2016-03-11 12:29:03 +0000
commitf24210caac8d50940ddef858994571be59179c10 (patch)
treecfc8b264e77abbab9827517d1827f9a4fb4dcd50 /src/lib
parent9fdac37187e35f45570c3808011d0283c658652d (diff)
Revert "Automatic migration to the new eo_add syntax."
This reverts commit 4f949a2757b6332306264d7f126b15ba7bfd37d4.
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/ecore/ecore.c2
-rw-r--r--src/lib/ecore/ecore_anim.c4
-rw-r--r--src/lib/ecore/ecore_exe.c3
-rw-r--r--src/lib/ecore/ecore_idle_enterer.c4
-rw-r--r--src/lib/ecore/ecore_idle_exiter.c2
-rw-r--r--src/lib/ecore/ecore_idler.c3
-rw-r--r--src/lib/ecore/ecore_job.c3
-rw-r--r--src/lib/ecore/ecore_main.c2
-rw-r--r--src/lib/ecore/ecore_poller.c2
-rw-r--r--src/lib/ecore/ecore_timer.c4
-rw-r--r--src/lib/ecore_con/ecore_con.c10
-rw-r--r--src/lib/ecore_con/ecore_con_eet.c4
-rw-r--r--src/lib/ecore_con/ecore_con_local_win32.c3
-rw-r--r--src/lib/ecore_con/ecore_con_url.c2
-rw-r--r--src/lib/edje/edje_calc.c2
-rw-r--r--src/lib/edje/edje_edit.c2
-rw-r--r--src/lib/edje/edje_load.c16
-rw-r--r--src/lib/edje/edje_multisense.c12
-rw-r--r--src/lib/edje/edje_smart.c2
-rw-r--r--src/lib/eio/eio_model.c7
-rw-r--r--src/lib/eldbus/eldbus_model_connection.c3
-rw-r--r--src/lib/eldbus/eldbus_model_object.c2
-rw-r--r--src/lib/eldbus/eldbus_model_proxy.c4
-rw-r--r--src/lib/emotion/emotion_smart.c2
-rw-r--r--src/lib/evas/Evas_Legacy.h3
-rw-r--r--src/lib/evas/canvas/evas_canvas3d_camera.c3
-rw-r--r--src/lib/evas/canvas/evas_canvas3d_light.c3
-rw-r--r--src/lib/evas/canvas/evas_canvas3d_material.c3
-rw-r--r--src/lib/evas/canvas/evas_canvas3d_mesh.c3
-rw-r--r--src/lib/evas/canvas/evas_canvas3d_node.c3
-rw-r--r--src/lib/evas/canvas/evas_canvas3d_primitive.c3
-rw-r--r--src/lib/evas/canvas/evas_canvas3d_scene.c3
-rw-r--r--src/lib/evas/canvas/evas_canvas3d_texture.c3
-rw-r--r--src/lib/evas/canvas/evas_main.c3
-rw-r--r--src/lib/evas/canvas/evas_object_box.c3
-rw-r--r--src/lib/evas/canvas/evas_object_grid.c3
-rw-r--r--src/lib/evas/canvas/evas_object_image.c3
-rw-r--r--src/lib/evas/canvas/evas_object_line.c3
-rw-r--r--src/lib/evas/canvas/evas_object_polygon.c3
-rw-r--r--src/lib/evas/canvas/evas_object_rectangle.c3
-rw-r--r--src/lib/evas/canvas/evas_object_smart.c2
-rw-r--r--src/lib/evas/canvas/evas_object_table.c3
-rw-r--r--src/lib/evas/canvas/evas_object_text.c3
-rw-r--r--src/lib/evas/canvas/evas_object_textblock.c3
-rw-r--r--src/lib/evas/canvas/evas_object_textgrid.c3
-rw-r--r--src/lib/evas/canvas/evas_object_vg.c5
-rw-r--r--src/lib/evas/canvas/evas_out.c3
-rw-r--r--src/lib/evas/canvas/evas_vg_container.c6
-rw-r--r--src/lib/evas/canvas/evas_vg_node.c2
-rw-r--r--src/lib/evas/canvas/evas_vg_shape.c9
50 files changed, 78 insertions, 109 deletions
diff --git a/src/lib/ecore/ecore.c b/src/lib/ecore/ecore.c
index f2376ff..247612b 100644
--- a/src/lib/ecore/ecore.c
+++ b/src/lib/ecore/ecore.c
@@ -265,7 +265,7 @@ ecore_init(void)
265#if defined(GLIB_INTEGRATION_ALWAYS) 265#if defined(GLIB_INTEGRATION_ALWAYS)
266 if (_ecore_glib_always_integrate) ecore_main_loop_glib_integrate(); 266 if (_ecore_glib_always_integrate) ecore_main_loop_glib_integrate();
267#endif 267#endif
268 eo_add(&_ecore_parent, ECORE_PARENT_CLASS, NULL); 268 _ecore_parent = eo_add(ECORE_PARENT_CLASS, NULL);
269 269
270#if defined(HAVE_MALLINFO) || defined(HAVE_MALLOC_INFO) 270#if defined(HAVE_MALLINFO) || defined(HAVE_MALLOC_INFO)
271 if (getenv("ECORE_MEM_STAT")) 271 if (getenv("ECORE_MEM_STAT"))
diff --git a/src/lib/ecore/ecore_anim.c b/src/lib/ecore/ecore_anim.c
index bddd7ce..d54e92f 100644
--- a/src/lib/ecore/ecore_anim.c
+++ b/src/lib/ecore/ecore_anim.c
@@ -372,7 +372,7 @@ ecore_animator_add(Ecore_Task_Cb func,
372{ 372{
373 Ecore_Animator *animator = NULL; 373 Ecore_Animator *animator = NULL;
374 374
375 eo_add(&animator, MY_CLASS, _ecore_parent, ecore_animator_constructor(animator, func, data)); 375 animator = eo_add(MY_CLASS, _ecore_parent, ecore_animator_constructor(eoid, func, data));
376 return animator; 376 return animator;
377} 377}
378 378
@@ -388,7 +388,7 @@ ecore_animator_timeline_add(double runtime,
388 const void *data) 388 const void *data)
389{ 389{
390 Ecore_Animator *animator; 390 Ecore_Animator *animator;
391 eo_add(&animator, MY_CLASS, _ecore_parent, ecore_animator_timeline_constructor(animator, runtime, func, data)); 391 animator = eo_add(MY_CLASS, _ecore_parent, ecore_animator_timeline_constructor(eoid, runtime, func, data));
392 return animator; 392 return animator;
393} 393}
394 394
diff --git a/src/lib/ecore/ecore_exe.c b/src/lib/ecore/ecore_exe.c
index bbb2d65..75c577b 100644
--- a/src/lib/ecore/ecore_exe.c
+++ b/src/lib/ecore/ecore_exe.c
@@ -67,8 +67,7 @@ ecore_exe_pipe_run(const char *exe_cmd,
67 Ecore_Exe_Flags flags, 67 Ecore_Exe_Flags flags,
68 const void *data) 68 const void *data)
69{ 69{
70 Ecore_Exe *ret = NULL; 70 Ecore_Exe *ret = eo_add(MY_CLASS, NULL, ecore_obj_exe_command_set(eoid, exe_cmd, flags));
71 eo_add(&ret, MY_CLASS, NULL, ecore_obj_exe_command_set(ret, exe_cmd, flags));
72 if (ret) 71 if (ret)
73 { 72 {
74 Ecore_Exe_Data *pd = eo_data_scope_get(ret, MY_CLASS); 73 Ecore_Exe_Data *pd = eo_data_scope_get(ret, MY_CLASS);
diff --git a/src/lib/ecore/ecore_idle_enterer.c b/src/lib/ecore/ecore_idle_enterer.c
index d985550..a7cbfa5 100644
--- a/src/lib/ecore/ecore_idle_enterer.c
+++ b/src/lib/ecore/ecore_idle_enterer.c
@@ -61,7 +61,7 @@ ecore_idle_enterer_add(Ecore_Task_Cb func,
61 const void *data) 61 const void *data)
62{ 62{
63 Ecore_Idle_Enterer *ie = NULL; 63 Ecore_Idle_Enterer *ie = NULL;
64 eo_add(&ie, MY_CLASS, _ecore_parent, ecore_idle_enterer_after_constructor(ie, func, data)); 64 ie = eo_add(MY_CLASS, _ecore_parent, ecore_idle_enterer_after_constructor(eoid, func, data));
65 return ie; 65 return ie;
66} 66}
67 67
@@ -78,7 +78,7 @@ ecore_idle_enterer_before_add(Ecore_Task_Cb func,
78 const void *data) 78 const void *data)
79{ 79{
80 Ecore_Idle_Enterer *ie = NULL; 80 Ecore_Idle_Enterer *ie = NULL;
81 eo_add(&ie, MY_CLASS, _ecore_parent, ecore_idle_enterer_before_constructor(ie, func, data)); 81 ie = eo_add(MY_CLASS, _ecore_parent, ecore_idle_enterer_before_constructor(eoid, func, data));
82 return ie; 82 return ie;
83} 83}
84 84
diff --git a/src/lib/ecore/ecore_idle_exiter.c b/src/lib/ecore/ecore_idle_exiter.c
index 483f8df..5074b13 100644
--- a/src/lib/ecore/ecore_idle_exiter.c
+++ b/src/lib/ecore/ecore_idle_exiter.c
@@ -37,7 +37,7 @@ ecore_idle_exiter_add(Ecore_Task_Cb func,
37 const void *data) 37 const void *data)
38{ 38{
39 Ecore_Idle_Exiter *ie = NULL; 39 Ecore_Idle_Exiter *ie = NULL;
40 eo_add(&ie, MY_CLASS, _ecore_parent, ecore_idle_exiter_constructor(ie, func, data)); 40 ie = eo_add(MY_CLASS, _ecore_parent, ecore_idle_exiter_constructor(eoid, func, data));
41 return ie; 41 return ie;
42} 42}
43 43
diff --git a/src/lib/ecore/ecore_idler.c b/src/lib/ecore/ecore_idler.c
index 00d60fb..f68d424 100644
--- a/src/lib/ecore/ecore_idler.c
+++ b/src/lib/ecore/ecore_idler.c
@@ -35,8 +35,7 @@ EAPI Ecore_Idler *
35ecore_idler_add(Ecore_Task_Cb func, 35ecore_idler_add(Ecore_Task_Cb func,
36 const void *data) 36 const void *data)
37{ 37{
38 Eo *ret = NULL; 38 return eo_add(MY_CLASS, _ecore_parent, ecore_idler_constructor(eoid, func, data));
39 return eo_add(&ret, MY_CLASS, _ecore_parent, ecore_idler_constructor(ret, func, data));
40} 39}
41 40
42EOLIAN static void 41EOLIAN static void
diff --git a/src/lib/ecore/ecore_job.c b/src/lib/ecore/ecore_job.c
index a9c4df5..1f459c7 100644
--- a/src/lib/ecore/ecore_job.c
+++ b/src/lib/ecore/ecore_job.c
@@ -49,8 +49,7 @@ EAPI Ecore_Job *
49ecore_job_add(Ecore_Cb func, 49ecore_job_add(Ecore_Cb func,
50 const void *data) 50 const void *data)
51{ 51{
52 Ecore_Job *job = NULL; 52 Ecore_Job *job = eo_add(MY_CLASS, _ecore_parent, ecore_job_constructor(eoid, func, data));
53 eo_add(&job, MY_CLASS, _ecore_parent, ecore_job_constructor(job, func, data));
54 return job; 53 return job;
55} 54}
56 55
diff --git a/src/lib/ecore/ecore_main.c b/src/lib/ecore/ecore_main.c
index d0b9a25..8175e63 100644
--- a/src/lib/ecore/ecore_main.c
+++ b/src/lib/ecore/ecore_main.c
@@ -2713,7 +2713,7 @@ EAPI Eo *ecore_main_loop_get(void)
2713{ 2713{
2714 if (!_mainloop_singleton) 2714 if (!_mainloop_singleton)
2715 { 2715 {
2716 eo_add(&_mainloop_singleton, ECORE_MAINLOOP_CLASS, NULL); 2716 _mainloop_singleton = eo_add(ECORE_MAINLOOP_CLASS, NULL);
2717 } 2717 }
2718 2718
2719 return _mainloop_singleton; 2719 return _mainloop_singleton;
diff --git a/src/lib/ecore/ecore_poller.c b/src/lib/ecore/ecore_poller.c
index 9b0b9a8..79f2a78 100644
--- a/src/lib/ecore/ecore_poller.c
+++ b/src/lib/ecore/ecore_poller.c
@@ -237,7 +237,7 @@ ecore_poller_add(Ecore_Poller_Type type EINA_UNUSED,
237 const void *data) 237 const void *data)
238{ 238{
239 Ecore_Poller *poller; 239 Ecore_Poller *poller;
240 eo_add(&poller, MY_CLASS, _ecore_parent, ecore_poller_constructor(poller, type, interval, func, data)); 240 poller = eo_add(MY_CLASS, _ecore_parent, ecore_poller_constructor(eoid, type, interval, func, data));
241 return poller; 241 return poller;
242} 242}
243 243
diff --git a/src/lib/ecore/ecore_timer.c b/src/lib/ecore/ecore_timer.c
index 2c33648..7343a7f 100644
--- a/src/lib/ecore/ecore_timer.c
+++ b/src/lib/ecore/ecore_timer.c
@@ -93,7 +93,7 @@ ecore_timer_add(double in,
93 Ecore_Timer *timer = NULL; 93 Ecore_Timer *timer = NULL;
94 94
95 EINA_MAIN_LOOP_CHECK_RETURN_VAL(NULL); 95 EINA_MAIN_LOOP_CHECK_RETURN_VAL(NULL);
96 eo_add(&timer, MY_CLASS, _ecore_parent, ecore_obj_timer_constructor(timer, in, func, data)); 96 timer = eo_add(MY_CLASS, _ecore_parent, ecore_obj_timer_constructor(eoid, in, func, data));
97 return timer; 97 return timer;
98} 98}
99 99
@@ -357,7 +357,7 @@ _ecore_timer_loop_add(double in,
357 const void *data) 357 const void *data)
358{ 358{
359 Ecore_Timer *timer = NULL; 359 Ecore_Timer *timer = NULL;
360 eo_add(&timer, MY_CLASS, _ecore_parent, ecore_obj_timer_loop_constructor(timer, in, func, data)); 360 timer = eo_add(MY_CLASS, _ecore_parent, ecore_obj_timer_loop_constructor(eoid, in, func, data));
361 361
362 return timer; 362 return timer;
363} 363}
diff --git a/src/lib/ecore_con/ecore_con.c b/src/lib/ecore_con/ecore_con.c
index 2bfca03..ba1a575 100644
--- a/src/lib/ecore_con/ecore_con.c
+++ b/src/lib/ecore_con/ecore_con.c
@@ -305,7 +305,7 @@ _efl_network_base_lookup(Eo *kls_obj EINA_UNUSED, void *pd EINA_UNUSED, const ch
305 if (!name || !done_cb) 305 if (!name || !done_cb)
306 return EINA_FALSE; 306 return EINA_FALSE;
307 307
308 eo_add(&obj, EFL_NETWORK_CONNECTOR_CLASS, NULL, efl_network_server_connection_type_set(obj, ECORE_CON_REMOTE_TCP), efl_network_server_name_set(obj, name), efl_network_base_port_set(obj, 1025)); 308 obj = eo_add(EFL_NETWORK_CONNECTOR_CLASS, NULL, efl_network_server_connection_type_set(eoid, ECORE_CON_REMOTE_TCP), efl_network_server_name_set(eoid, name), efl_network_base_port_set(eoid, 1025));
309 309
310 lk = malloc(sizeof (Ecore_Con_Lookup)); 310 lk = malloc(sizeof (Ecore_Con_Lookup));
311 if (!lk) 311 if (!lk)
@@ -359,7 +359,7 @@ ecore_con_server_add(Ecore_Con_Type compl_type,
359 359
360 /* local system socket: FILE: /tmp/.ecore_service|[name]|[port] */ 360 /* local system socket: FILE: /tmp/.ecore_service|[name]|[port] */
361 /* remote system socket: TCP/IP: [name]:[port] */ 361 /* remote system socket: TCP/IP: [name]:[port] */
362 eo_add(&obj, EFL_NETWORK_SERVER_CLASS, NULL, efl_network_server_connection_type_set(obj, compl_type), efl_network_server_name_set(obj, name), efl_network_base_port_set(obj, port)); 362 obj = eo_add(EFL_NETWORK_SERVER_CLASS, NULL, efl_network_server_connection_type_set(eoid, compl_type), efl_network_server_name_set(eoid, name), efl_network_base_port_set(eoid, port));
363 363
364 ecore_con_server_data_set(obj, (void *) data); 364 ecore_con_server_data_set(obj, (void *) data);
365 365
@@ -455,7 +455,7 @@ ecore_con_server_connect(Ecore_Con_Type compl_type,
455 /* local user socket: FILE: ~/.ecore/[name]/[port] */ 455 /* local user socket: FILE: ~/.ecore/[name]/[port] */
456 /* local system socket: FILE: /tmp/.ecore_service|[name]|[port] */ 456 /* local system socket: FILE: /tmp/.ecore_service|[name]|[port] */
457 /* remote system socket: TCP/IP: [name]:[port] */ 457 /* remote system socket: TCP/IP: [name]:[port] */
458 eo_add(&obj, EFL_NETWORK_CONNECTOR_CLASS, NULL, efl_network_server_connection_type_set(obj, compl_type), efl_network_server_name_set(obj, name), efl_network_base_port_set(obj, port)); 458 obj = eo_add(EFL_NETWORK_CONNECTOR_CLASS, NULL, efl_network_server_connection_type_set(eoid, compl_type), efl_network_server_name_set(eoid, name), efl_network_base_port_set(eoid, port));
459 459
460 ecore_con_server_data_set(obj, (void *) data); 460 ecore_con_server_data_set(obj, (void *) data);
461 461
@@ -2056,7 +2056,7 @@ _ecore_con_svr_tcp_handler(void *data,
2056 2056
2057 /* a new client */ 2057 /* a new client */
2058 2058
2059 eo_add(&obj, EFL_NETWORK_CLIENT_CLASS, NULL); 2059 obj = eo_add(EFL_NETWORK_CLIENT_CLASS, NULL);
2060 Efl_Network_Client_Data *cl = eo_data_scope_get(obj, EFL_NETWORK_CLIENT_CLASS); 2060 Efl_Network_Client_Data *cl = eo_data_scope_get(obj, EFL_NETWORK_CLIENT_CLASS);
2061 if (!cl) 2061 if (!cl)
2062 { 2062 {
@@ -2331,7 +2331,7 @@ _ecore_con_svr_udp_handler(void *data,
2331 } 2331 }
2332 2332
2333/* Create a new client for use in the client data event */ 2333/* Create a new client for use in the client data event */
2334 eo_add(&obj, EFL_NETWORK_CLIENT_CLASS, NULL); 2334 obj = eo_add(EFL_NETWORK_CLIENT_CLASS, NULL);
2335 Efl_Network_Client_Data *cl = eo_data_scope_get(obj, EFL_NETWORK_CLIENT_CLASS); 2335 Efl_Network_Client_Data *cl = eo_data_scope_get(obj, EFL_NETWORK_CLIENT_CLASS);
2336 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, ECORE_CALLBACK_RENEW); 2336 EINA_SAFETY_ON_NULL_RETURN_VAL(cl, ECORE_CALLBACK_RENEW);
2337 2337
diff --git a/src/lib/ecore_con/ecore_con_eet.c b/src/lib/ecore_con/ecore_con_eet.c
index a652636..59a5b21 100644
--- a/src/lib/ecore_con/ecore_con_eet.c
+++ b/src/lib/ecore_con/ecore_con_eet.c
@@ -722,7 +722,7 @@ ecore_con_eet_server_new(Ecore_Con_Server *server)
722 722
723 if (!server) return NULL; 723 if (!server) return NULL;
724 724
725 eo_add(&ece_obj, ECORE_CON_EET_SERVER_OBJ_CLASS, NULL, ecore_con_eet_base_server_set(ece_obj, server)); 725 ece_obj = eo_add(ECORE_CON_EET_SERVER_OBJ_CLASS, NULL, ecore_con_eet_base_server_set(eoid, server));
726 726
727 return ece_obj; 727 return ece_obj;
728} 728}
@@ -734,7 +734,7 @@ ecore_con_eet_client_new(Ecore_Con_Server *server)
734 734
735 if (!server) return NULL; 735 if (!server) return NULL;
736 736
737 eo_add(&ece_obj, ECORE_CON_EET_CLIENT_OBJ_CLASS, NULL, ecore_con_eet_base_server_set(ece_obj, server)); 737 ece_obj = eo_add(ECORE_CON_EET_CLIENT_OBJ_CLASS, NULL, ecore_con_eet_base_server_set(eoid, server));
738 738
739 return ece_obj; 739 return ece_obj;
740} 740}
diff --git a/src/lib/ecore_con/ecore_con_local_win32.c b/src/lib/ecore_con/ecore_con_local_win32.c
index 9ab9b96..75d71c0 100644
--- a/src/lib/ecore_con/ecore_con_local_win32.c
+++ b/src/lib/ecore_con/ecore_con_local_win32.c
@@ -286,8 +286,7 @@ _ecore_con_local_win32_client_add(void *data, Ecore_Win32_Handler *wh)
286 (svr->client_count >= (unsigned int)svr->client_limit)) 286 (svr->client_count >= (unsigned int)svr->client_limit))
287 return ECORE_CALLBACK_CANCEL; 287 return ECORE_CALLBACK_CANCEL;
288 288
289 Ecore_Con_Client *cl_obj = NULL; 289 Ecore_Con_Client *cl_obj = eo_add(EFL_NETWORK_CLIENT_CLASS, NULL);
290 eo_add(&cl_obj, EFL_NETWORK_CLIENT_CLASS, NULL);
291 Efl_Network_Client_Data *cl = eo_data_scope_get(obj, EFL_NETWORK_CLIENT_CLASS); 290 Efl_Network_Client_Data *cl = eo_data_scope_get(obj, EFL_NETWORK_CLIENT_CLASS);
292 if (!cl) 291 if (!cl)
293 { 292 {
diff --git a/src/lib/ecore_con/ecore_con_url.c b/src/lib/ecore_con/ecore_con_url.c
index 3f12718..000bf4d 100644
--- a/src/lib/ecore_con/ecore_con_url.c
+++ b/src/lib/ecore_con/ecore_con_url.c
@@ -225,7 +225,7 @@ EAPI Ecore_Con_Url *
225ecore_con_url_new(const char *url) 225ecore_con_url_new(const char *url)
226{ 226{
227 Ecore_Con_Url *url_obj; 227 Ecore_Con_Url *url_obj;
228 eo_add(&url_obj, EFL_NETWORK_URL_CLASS, NULL, efl_network_url_set(url_obj, url)); 228 url_obj = eo_add(EFL_NETWORK_URL_CLASS, NULL, efl_network_url_set(eoid, url));
229 229
230 eo_event_callback_array_add(url_obj, efl_network_url_event_table_callbacks(), NULL); 230 eo_event_callback_array_add(url_obj, efl_network_url_event_table_callbacks(), NULL);
231 231
diff --git a/src/lib/edje/edje_calc.c b/src/lib/edje/edje_calc.c
index fe3764a..8b19443 100644
--- a/src/lib/edje/edje_calc.c
+++ b/src/lib/edje/edje_calc.c
@@ -4748,7 +4748,7 @@ _edje_part_recalc(Edje *ed, Edje_Real_Part *ep, int flags, Edje_Calc_Params *sta
4748 case EVAS_CANVAS3D_MESH_PRIMITIVE_SPHERE: 4748 case EVAS_CANVAS3D_MESH_PRIMITIVE_SPHERE:
4749 { 4749 {
4750 Eo *primitive = NULL; 4750 Eo *primitive = NULL;
4751 eo_add(&primitive, EVAS_CANVAS3D_PRIMITIVE_CLASS, ed->base->evas); 4751 primitive = eo_add(EVAS_CANVAS3D_PRIMITIVE_CLASS, ed->base->evas);
4752 evas_canvas3d_primitive_form_set(primitive, pd_mesh_node->mesh_node.mesh.primitive); 4752 evas_canvas3d_primitive_form_set(primitive, pd_mesh_node->mesh_node.mesh.primitive);
4753 4753
4754 frame_exist = evas_canvas3d_mesh_frame_exist(mesh, pf->type.node.frame); 4754 frame_exist = evas_canvas3d_mesh_frame_exist(mesh, pf->type.node.frame);
diff --git a/src/lib/edje/edje_edit.c b/src/lib/edje/edje_edit.c
index d6b4608..3934392 100644
--- a/src/lib/edje/edje_edit.c
+++ b/src/lib/edje/edje_edit.c
@@ -231,7 +231,7 @@ EAPI Evas_Object *
231edje_edit_object_add(Evas *evas) 231edje_edit_object_add(Evas *evas)
232{ 232{
233 Evas_Object *e; 233 Evas_Object *e;
234 eo_add(&e, MY_CLASS, evas); 234 e = eo_add(MY_CLASS, evas);
235 return e; 235 return e;
236} 236}
237 237
diff --git a/src/lib/edje/edje_load.c b/src/lib/edje/edje_load.c
index 490ba17..ba164b7 100644
--- a/src/lib/edje/edje_load.c
+++ b/src/lib/edje/edje_load.c
@@ -793,9 +793,9 @@ _edje_object_file_set_internal(Evas_Object *obj, const Eina_File *file, const ch
793 Evas_Canvas3D_Material *material = NULL; 793 Evas_Canvas3D_Material *material = NULL;
794 Edje_Part_Description_Mesh_Node *pd_mesh_node; 794 Edje_Part_Description_Mesh_Node *pd_mesh_node;
795 795
796 eo_add(&rp->node, EVAS_CANVAS3D_NODE_CLASS, ed->base->evas, evas_canvas3d_node_constructor(rp->node, EVAS_CANVAS3D_NODE_TYPE_MESH)); 796 rp->node = eo_add(EVAS_CANVAS3D_NODE_CLASS, ed->base->evas, evas_canvas3d_node_constructor(eoid, EVAS_CANVAS3D_NODE_TYPE_MESH));
797 797
798 eo_add(&mesh, EVAS_CANVAS3D_MESH_CLASS, ed->base->evas); 798 mesh = eo_add(EVAS_CANVAS3D_MESH_CLASS, ed->base->evas);
799 evas_canvas3d_node_mesh_add(rp->node, mesh); 799 evas_canvas3d_node_mesh_add(rp->node, mesh);
800 800
801 pd_mesh_node = (Edje_Part_Description_Mesh_Node*) rp->chosen_description; 801 pd_mesh_node = (Edje_Part_Description_Mesh_Node*) rp->chosen_description;
@@ -809,13 +809,13 @@ _edje_object_file_set_internal(Evas_Object *obj, const Eina_File *file, const ch
809 evas_canvas3d_mesh_frame_add(mesh, 0); 809 evas_canvas3d_mesh_frame_add(mesh, 0);
810 } 810 }
811 811
812 eo_add(&material, EVAS_CANVAS3D_MATERIAL_CLASS, ed->base->evas); 812 material = eo_add(EVAS_CANVAS3D_MATERIAL_CLASS, ed->base->evas);
813 evas_canvas3d_mesh_frame_material_set(mesh, 0, material); 813 evas_canvas3d_mesh_frame_material_set(mesh, 0, material);
814 if (pd_mesh_node->mesh_node.texture.need_texture && pd_mesh_node->mesh_node.texture.textured) 814 if (pd_mesh_node->mesh_node.texture.need_texture && pd_mesh_node->mesh_node.texture.textured)
815 { 815 {
816 Evas_Canvas3D_Texture *texture = NULL; 816 Evas_Canvas3D_Texture *texture = NULL;
817 817
818 eo_add(&texture, EVAS_CANVAS3D_TEXTURE_CLASS, ed->base->evas); 818 texture = eo_add(EVAS_CANVAS3D_TEXTURE_CLASS, ed->base->evas);
819 evas_canvas3d_material_texture_set(material, EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, texture); 819 evas_canvas3d_material_texture_set(material, EVAS_CANVAS3D_MATERIAL_ATTRIB_DIFFUSE, texture);
820 } 820 }
821 rp->object = NULL; 821 rp->object = NULL;
@@ -826,8 +826,8 @@ _edje_object_file_set_internal(Evas_Object *obj, const Eina_File *file, const ch
826 { 826 {
827 Evas_Canvas3D_Light *light = NULL; 827 Evas_Canvas3D_Light *light = NULL;
828 828
829 eo_add(&rp->node, EVAS_CANVAS3D_NODE_CLASS, ed->base->evas, evas_canvas3d_node_constructor(rp->node, EVAS_CANVAS3D_NODE_TYPE_LIGHT)); 829 rp->node = eo_add(EVAS_CANVAS3D_NODE_CLASS, ed->base->evas, evas_canvas3d_node_constructor(eoid, EVAS_CANVAS3D_NODE_TYPE_LIGHT));
830 eo_add(&light, EVAS_CANVAS3D_LIGHT_CLASS, ed->base->evas); 830 light = eo_add(EVAS_CANVAS3D_LIGHT_CLASS, ed->base->evas);
831 evas_canvas3d_node_light_set(rp->node, light); 831 evas_canvas3d_node_light_set(rp->node, light);
832 832
833 rp->object = NULL; 833 rp->object = NULL;
@@ -838,8 +838,8 @@ _edje_object_file_set_internal(Evas_Object *obj, const Eina_File *file, const ch
838 { 838 {
839 Evas_Canvas3D_Camera *camera = NULL; 839 Evas_Canvas3D_Camera *camera = NULL;
840 840
841 eo_add(&rp->node, EVAS_CANVAS3D_NODE_CLASS, ed->base->evas, evas_canvas3d_node_constructor(rp->node, EVAS_CANVAS3D_NODE_TYPE_CAMERA)); 841 rp->node = eo_add(EVAS_CANVAS3D_NODE_CLASS, ed->base->evas, evas_canvas3d_node_constructor(eoid, EVAS_CANVAS3D_NODE_TYPE_CAMERA));
842 eo_add(&camera, EVAS_CANVAS3D_CAMERA_CLASS, ed->base->evas); 842 camera = eo_add(EVAS_CANVAS3D_CAMERA_CLASS, ed->base->evas);
843 evas_canvas3d_node_camera_set(rp->node, camera); 843 evas_canvas3d_node_camera_set(rp->node, camera);
844 844
845 rp->object = evas_object_image_filled_add(ed->base->evas); 845 rp->object = evas_object_image_filled_add(ed->base->evas);
diff --git a/src/lib/edje/edje_multisense.c b/src/lib/edje/edje_multisense.c
index 8b6f2fa..df98157 100644
--- a/src/lib/edje/edje_multisense.c
+++ b/src/lib/edje/edje_multisense.c
@@ -202,13 +202,13 @@ _edje_multisense_internal_sound_sample_play(Edje *ed, const char *sample_name, c
202 eet_data->vio.tell = eet_snd_file_tell; 202 eet_data->vio.tell = eet_snd_file_tell;
203 eet_data->offset = 0; 203 eet_data->offset = 0;
204 204
205 eo_add(&in, ECORE_AUDIO_IN_SNDFILE_CLASS, NULL, ecore_audio_obj_name_set(in, snd_id_str), ecore_audio_obj_in_speed_set(in, speed), ecore_audio_obj_vio_set(in, &eet_data->vio, eet_data, _free), eo_event_callback_add(in, ECORE_AUDIO_IN_EVENT_IN_STOPPED, _play_finished, NULL)); 205 in = eo_add(ECORE_AUDIO_IN_SNDFILE_CLASS, NULL, ecore_audio_obj_name_set(eoid, snd_id_str), ecore_audio_obj_in_speed_set(eoid, speed), ecore_audio_obj_vio_set(eoid, &eet_data->vio, eet_data, _free), eo_event_callback_add(eoid, ECORE_AUDIO_IN_EVENT_IN_STOPPED, _play_finished, NULL));
206 if (!out) 206 if (!out)
207 { 207 {
208#if HAVE_COREAUDIO 208#if HAVE_COREAUDIO
209 eo_add(&out, ECORE_AUDIO_OUT_CORE_AUDIO_CLASS, NULL); 209 out = eo_add(ECORE_AUDIO_OUT_CORE_AUDIO_CLASS, NULL);
210#elif HAVE_PULSE 210#elif HAVE_PULSE
211 eo_add(&out, ECORE_AUDIO_OUT_PULSE_CLASS, NULL, eo_event_callback_add(out, ECORE_AUDIO_OUT_PULSE_EVENT_CONTEXT_FAIL, _out_fail, NULL)); 211 out = eo_add(ECORE_AUDIO_OUT_PULSE_CLASS, NULL, eo_event_callback_add(eoid, ECORE_AUDIO_OUT_PULSE_EVENT_CONTEXT_FAIL, _out_fail, NULL));
212#endif 212#endif
213 if (out) outs++; 213 if (out) outs++;
214 } 214 }
@@ -269,7 +269,7 @@ _edje_multisense_internal_sound_tone_play(Edje *ed, const char *tone_name, const
269 tone = &ed->file->sound_dir->tones[i]; 269 tone = &ed->file->sound_dir->tones[i];
270 if (!strcmp(tone->name, tone_name)) 270 if (!strcmp(tone->name, tone_name))
271 { 271 {
272 eo_add(&in, ECORE_AUDIO_IN_TONE_CLASS, NULL); 272 in = eo_add(ECORE_AUDIO_IN_TONE_CLASS, NULL);
273 ecore_audio_obj_name_set(in, "tone"); 273 ecore_audio_obj_name_set(in, "tone");
274 eo_key_data_set(in, ECORE_AUDIO_ATTR_TONE_FREQ, &tone->value); 274 eo_key_data_set(in, ECORE_AUDIO_ATTR_TONE_FREQ, &tone->value);
275 ecore_audio_obj_in_length_set(in, duration); 275 ecore_audio_obj_in_length_set(in, duration);
@@ -278,9 +278,9 @@ _edje_multisense_internal_sound_tone_play(Edje *ed, const char *tone_name, const
278 if (!out) 278 if (!out)
279 { 279 {
280#if HAVE_COREAUDIO 280#if HAVE_COREAUDIO
281 eo_add(&out, ECORE_AUDIO_OUT_CORE_AUDIO_CLASS, NULL); 281 out = eo_add(ECORE_AUDIO_OUT_CORE_AUDIO_CLASS, NULL);
282#elif HAVE_PULSE 282#elif HAVE_PULSE
283 eo_add(&out, ECORE_AUDIO_OUT_PULSE_CLASS, NULL, eo_event_callback_add(out, ECORE_AUDIO_OUT_PULSE_EVENT_CONTEXT_FAIL, _out_fail, NULL)); 283 out = eo_add(ECORE_AUDIO_OUT_PULSE_CLASS, NULL, eo_event_callback_add(eoid, ECORE_AUDIO_OUT_PULSE_EVENT_CONTEXT_FAIL, _out_fail, NULL));
284#endif 284#endif
285 if (out) outs++; 285 if (out) outs++;
286 } 286 }
diff --git a/src/lib/edje/edje_smart.c b/src/lib/edje/edje_smart.c
index eb5a9cb..ab42445 100644
--- a/src/lib/edje/edje_smart.c
+++ b/src/lib/edje/edje_smart.c
@@ -20,7 +20,7 @@ edje_object_add(Evas *evas)
20{ 20{
21 Evas_Object *e; 21 Evas_Object *e;
22 EINA_SAFETY_ON_NULL_RETURN_VAL(evas, NULL); 22 EINA_SAFETY_ON_NULL_RETURN_VAL(evas, NULL);
23 eo_add(&e, MY_CLASS, evas); 23 e = eo_add(MY_CLASS, evas);
24 return e; 24 return e;
25} 25}
26 26
diff --git a/src/lib/eio/eio_model.c b/src/lib/eio/eio_model.c
index 91235d2..1d96750 100644
--- a/src/lib/eio/eio_model.c
+++ b/src/lib/eio/eio_model.c
@@ -147,7 +147,7 @@ _efl_model_evt_added_ecore_cb(void *data EINA_UNUSED, int type EINA_UNUSED, void
147 Efl_Model_Children_Event cevt; 147 Efl_Model_Children_Event cevt;
148 Eina_Value path; 148 Eina_Value path;
149 149
150 eo_add_ref(&cevt.child, EIO_MODEL_CLASS, priv->obj, eio_model_path_set(cevt.child, evt->filename)); 150 cevt.child = eo_add_ref(EIO_MODEL_CLASS, priv->obj, eio_model_path_set(eoid, evt->filename));
151 priv->children_list = eina_list_append(priv->children_list, cevt.child); 151 priv->children_list = eina_list_append(priv->children_list, cevt.child);
152 cevt.index = eina_list_count(priv->children_list); 152 cevt.index = eina_list_count(priv->children_list);
153 153
@@ -407,7 +407,7 @@ _eio_main_children_load_cb(void *data, Eio_File *handler EINA_UNUSED, const Eina
407 Eio_Model_Data *priv = data; 407 Eio_Model_Data *priv = data;
408 EINA_SAFETY_ON_NULL_RETURN(priv); 408 EINA_SAFETY_ON_NULL_RETURN(priv);
409 409
410 eo_add(&child, MY_CLASS, NULL, eio_model_path_set(child, info->path)); 410 child = eo_add(MY_CLASS, NULL, eio_model_path_set(eoid, info->path));
411 eina_spinlock_take(&priv->filter_lock); 411 eina_spinlock_take(&priv->filter_lock);
412 if (priv->filter_cb) 412 if (priv->filter_cb)
413 eio_model_children_filter_set(child, priv->filter_cb, priv->filter_userdata); 413 eio_model_children_filter_set(child, priv->filter_cb, priv->filter_userdata);
@@ -523,8 +523,7 @@ _eio_model_children_filter_set(Eo *obj EINA_UNUSED, Eio_Model_Data *priv, Eio_Fi
523static Eo * 523static Eo *
524_eio_model_efl_model_base_child_add(Eo *obj EINA_UNUSED, Eio_Model_Data *priv EINA_UNUSED) 524_eio_model_efl_model_base_child_add(Eo *obj EINA_UNUSED, Eio_Model_Data *priv EINA_UNUSED)
525{ 525{
526 Eo *ret = NULL; 526 return eo_add(EIO_MODEL_CLASS, obj);
527 return eo_add(&ret, EIO_MODEL_CLASS, obj);
528} 527}
529 528
530static void 529static void
diff --git a/src/lib/eldbus/eldbus_model_connection.c b/src/lib/eldbus/eldbus_model_connection.c
index af7e9eb..ebd758b 100644
--- a/src/lib/eldbus/eldbus_model_connection.c
+++ b/src/lib/eldbus/eldbus_model_connection.c
@@ -345,8 +345,7 @@ _eldbus_model_connection_names_list_cb(void *data,
345 { 345 {
346 DBG("(%p): bus = %s", pd->obj, bus); 346 DBG("(%p): bus = %s", pd->obj, bus);
347 347
348 Eo *child = NULL; 348 Eo *child = eo_add(ELDBUS_MODEL_OBJECT_CLASS, NULL, eldbus_model_object_connection_constructor(eoid, pd->connection, bus, "/"));
349 eo_add(&child, ELDBUS_MODEL_OBJECT_CLASS, NULL, eldbus_model_object_connection_constructor(child, pd->connection, bus, "/"));
350 349
351 pd->children_list = eina_list_append(pd->children_list, child); 350 pd->children_list = eina_list_append(pd->children_list, child);
352 } 351 }
diff --git a/src/lib/eldbus/eldbus_model_object.c b/src/lib/eldbus/eldbus_model_object.c
index 697a759..240d657e7 100644
--- a/src/lib/eldbus/eldbus_model_object.c
+++ b/src/lib/eldbus/eldbus_model_object.c
@@ -532,7 +532,7 @@ _eldbus_model_object_create_children(Eldbus_Model_Object_Data *pd, Eldbus_Object
532 WRN("(%p) Creating child: bus = %s, path = %s, interface = %s", pd->obj, pd->bus, current_path, interface->name); 532 WRN("(%p) Creating child: bus = %s, path = %s, interface = %s", pd->obj, pd->bus, current_path, interface->name);
533 533
534 // TODO: increment reference to keep 'interface' in memory 534 // TODO: increment reference to keep 'interface' in memory
535 eo_add_ref(&child, ELDBUS_MODEL_PROXY_CLASS, NULL, eldbus_model_proxy_constructor(child, object, interface)); 535 child = eo_add_ref(ELDBUS_MODEL_PROXY_CLASS, NULL, eldbus_model_proxy_constructor(eoid, object, interface));
536 536
537 pd->children_list = eina_list_append(pd->children_list, child); 537 pd->children_list = eina_list_append(pd->children_list, child);
538 } 538 }
diff --git a/src/lib/eldbus/eldbus_model_proxy.c b/src/lib/eldbus/eldbus_model_proxy.c
index d2a3c80..2e660f4 100644
--- a/src/lib/eldbus/eldbus_model_proxy.c
+++ b/src/lib/eldbus/eldbus_model_proxy.c
@@ -325,7 +325,7 @@ _eldbus_model_proxy_create_methods_children(Eldbus_Model_Proxy_Data *pd)
325 325
326 INF("(%p) Creating method child: bus = %s, path = %s, method = %s::%s", pd->obj, bus, path, interface_name, method_name); 326 INF("(%p) Creating method child: bus = %s, path = %s, method = %s::%s", pd->obj, bus, path, interface_name, method_name);
327 327
328 eo_add(&child, ELDBUS_MODEL_METHOD_CLASS, NULL, eldbus_model_method_constructor(child, pd->proxy, method)); 328 child = eo_add(ELDBUS_MODEL_METHOD_CLASS, NULL, eldbus_model_method_constructor(eoid, pd->proxy, method));
329 329
330 pd->children_list = eina_list_append(pd->children_list, child); 330 pd->children_list = eina_list_append(pd->children_list, child);
331 } 331 }
@@ -359,7 +359,7 @@ _eldbus_model_proxy_create_signals_children(Eldbus_Model_Proxy_Data *pd)
359 359
360 DBG("(%p) Creating signal child: bus = %s, path = %s, signal = %s::%s", pd->obj, bus, path, interface_name, signal_name); 360 DBG("(%p) Creating signal child: bus = %s, path = %s, signal = %s::%s", pd->obj, bus, path, interface_name, signal_name);
361 361
362 eo_add(&child, ELDBUS_MODEL_SIGNAL_CLASS, NULL, eldbus_model_signal_constructor(child, pd->proxy, signal)); 362 child = eo_add(ELDBUS_MODEL_SIGNAL_CLASS, NULL, eldbus_model_signal_constructor(eoid, pd->proxy, signal));
363 363
364 pd->children_list = eina_list_append(pd->children_list, child); 364 pd->children_list = eina_list_append(pd->children_list, child);
365 } 365 }
diff --git a/src/lib/emotion/emotion_smart.c b/src/lib/emotion/emotion_smart.c
index 5e7afa2..d0b0f32 100644
--- a/src/lib/emotion/emotion_smart.c
+++ b/src/lib/emotion/emotion_smart.c
@@ -236,7 +236,7 @@ EAPI Evas_Object *
236emotion_object_add(Evas *evas) 236emotion_object_add(Evas *evas)
237{ 237{
238 Evas_Object *e; 238 Evas_Object *e;
239 eo_add(&e, MY_CLASS, evas); 239 e = eo_add(MY_CLASS, evas);
240 return e; 240 return e;
241} 241}
242 242
diff --git a/src/lib/evas/Evas_Legacy.h b/src/lib/evas/Evas_Legacy.h
index 9163047..6f2108f 100644
--- a/src/lib/evas/Evas_Legacy.h
+++ b/src/lib/evas/Evas_Legacy.h
@@ -1681,8 +1681,7 @@ EAPI Evas_Object *evas_object_rectangle_add(Evas *e) EINA_WARN_UNUSED_RESULT EIN
1681 * @code 1681 * @code
1682 * vector = evas_object_vg_add(canvas); 1682 * vector = evas_object_vg_add(canvas);
1683 * root = evas_obj_vg_root_node_get(vector); 1683 * root = evas_obj_vg_root_node_get(vector);
1684 * shape = NULL; 1684 * shape = eo_add(EVAS_VG_SHAPE_CLASS, root);
1685 eo_add(&shape, EVAS_VG_SHAPE_CLASS, root);
1686 * Efl_Gfx_Path_Command *path_cmd = NULL; 1685 * Efl_Gfx_Path_Command *path_cmd = NULL;
1687 * double *points = NULL; 1686 * double *points = NULL;
1688 * efl_gfx_path_append_circle(&path_cmd, &points); 1687 * efl_gfx_path_append_circle(&path_cmd, &points);
diff --git a/src/lib/evas/canvas/evas_canvas3d_camera.c b/src/lib/evas/canvas/evas_canvas3d_camera.c
index 9b1fc6c..d631df6 100644
--- a/src/lib/evas/canvas/evas_canvas3d_camera.c
+++ b/src/lib/evas/canvas/evas_canvas3d_camera.c
@@ -101,8 +101,7 @@ evas_canvas3d_camera_add(Evas *e)
101 MAGIC_CHECK(e, Evas, MAGIC_EVAS); 101 MAGIC_CHECK(e, Evas, MAGIC_EVAS);
102 return NULL; 102 return NULL;
103 MAGIC_CHECK_END(); 103 MAGIC_CHECK_END();
104 Evas_Object *eo_obj = NULL; 104 Evas_Object *eo_obj = eo_add(MY_CLASS, e);
105 eo_add(&eo_obj, MY_CLASS, e);
106 return eo_obj; 105 return eo_obj;
107} 106}
108 107
diff --git a/src/lib/evas/canvas/evas_canvas3d_light.c b/src/lib/evas/canvas/evas_canvas3d_light.c
index b9b186f..11e9c81 100644
--- a/src/lib/evas/canvas/evas_canvas3d_light.c
+++ b/src/lib/evas/canvas/evas_canvas3d_light.c
@@ -72,8 +72,7 @@ evas_canvas3d_light_add(Evas *e)
72 MAGIC_CHECK(e, Evas, MAGIC_EVAS); 72 MAGIC_CHECK(e, Evas, MAGIC_EVAS);
73 return NULL; 73 return NULL;
74 MAGIC_CHECK_END(); 74 MAGIC_CHECK_END();
75 Evas_Object *eo_obj = NULL; 75 Evas_Object *eo_obj = eo_add(MY_CLASS, e);
76 eo_add(&eo_obj, MY_CLASS, e);
77 return eo_obj; 76 return eo_obj;
78} 77}
79 78
diff --git a/src/lib/evas/canvas/evas_canvas3d_material.c b/src/lib/evas/canvas/evas_canvas3d_material.c
index 98a4e66..5070d44 100644
--- a/src/lib/evas/canvas/evas_canvas3d_material.c
+++ b/src/lib/evas/canvas/evas_canvas3d_material.c
@@ -84,8 +84,7 @@ evas_canvas3d_material_add(Evas *e)
84 MAGIC_CHECK(e, Evas, MAGIC_EVAS); 84 MAGIC_CHECK(e, Evas, MAGIC_EVAS);
85 return NULL; 85 return NULL;
86 MAGIC_CHECK_END(); 86 MAGIC_CHECK_END();
87 Evas_Object *eo_obj = NULL; 87 Evas_Object *eo_obj = eo_add(MY_CLASS, e);
88 eo_add(&eo_obj, MY_CLASS, e);
89 return eo_obj; 88 return eo_obj;
90} 89}
91 90
diff --git a/src/lib/evas/canvas/evas_canvas3d_mesh.c b/src/lib/evas/canvas/evas_canvas3d_mesh.c
index 5442eca..d19a1fc 100644
--- a/src/lib/evas/canvas/evas_canvas3d_mesh.c
+++ b/src/lib/evas/canvas/evas_canvas3d_mesh.c
@@ -254,8 +254,7 @@ evas_canvas3d_mesh_add(Evas *e)
254 MAGIC_CHECK(e, Evas, MAGIC_EVAS); 254 MAGIC_CHECK(e, Evas, MAGIC_EVAS);
255 return NULL; 255 return NULL;
256 MAGIC_CHECK_END(); 256 MAGIC_CHECK_END();
257 Evas_Object *eo_obj = NULL; 257 Evas_Object *eo_obj = eo_add(MY_CLASS, e);
258 eo_add(&eo_obj, MY_CLASS, e);
259 return eo_obj; 258 return eo_obj;
260} 259}
261 260
diff --git a/src/lib/evas/canvas/evas_canvas3d_node.c b/src/lib/evas/canvas/evas_canvas3d_node.c
index 246450f..5e0944d 100644
--- a/src/lib/evas/canvas/evas_canvas3d_node.c
+++ b/src/lib/evas/canvas/evas_canvas3d_node.c
@@ -1012,8 +1012,7 @@ evas_canvas3d_node_add(Evas *e, Evas_Canvas3D_Node_Type type)
1012 MAGIC_CHECK(e, Evas, MAGIC_EVAS); 1012 MAGIC_CHECK(e, Evas, MAGIC_EVAS);
1013 return NULL; 1013 return NULL;
1014 MAGIC_CHECK_END(); 1014 MAGIC_CHECK_END();
1015 Evas_Object *eo_obj = NULL; 1015 Evas_Object *eo_obj = eo_add(MY_CLASS, e, evas_canvas3d_node_constructor(eoid, type));
1016 eo_add(&eo_obj, MY_CLASS, e, evas_canvas3d_node_constructor(eo_obj, type));
1017 return eo_obj; 1016 return eo_obj;
1018} 1017}
1019 1018
diff --git a/src/lib/evas/canvas/evas_canvas3d_primitive.c b/src/lib/evas/canvas/evas_canvas3d_primitive.c
index ab07d13..76dcdd6 100644
--- a/src/lib/evas/canvas/evas_canvas3d_primitive.c
+++ b/src/lib/evas/canvas/evas_canvas3d_primitive.c
@@ -20,8 +20,7 @@ evas_canvas3d_primitive_add(Evas *e)
20 MAGIC_CHECK(e, Evas, MAGIC_EVAS); 20 MAGIC_CHECK(e, Evas, MAGIC_EVAS);
21 return NULL; 21 return NULL;
22 MAGIC_CHECK_END(); 22 MAGIC_CHECK_END();
23 Evas_Object *eo_obj = NULL; 23 Evas_Object *eo_obj = eo_add(MY_CLASS, e);
24 eo_add(&eo_obj, MY_CLASS, e);
25 return eo_obj; 24 return eo_obj;
26} 25}
27 26
diff --git a/src/lib/evas/canvas/evas_canvas3d_scene.c b/src/lib/evas/canvas/evas_canvas3d_scene.c
index e1a0295..cb7ffc3 100644
--- a/src/lib/evas/canvas/evas_canvas3d_scene.c
+++ b/src/lib/evas/canvas/evas_canvas3d_scene.c
@@ -61,8 +61,7 @@ evas_canvas3d_scene_add(Evas *e)
61 MAGIC_CHECK(e, Evas, MAGIC_EVAS); 61 MAGIC_CHECK(e, Evas, MAGIC_EVAS);
62 return NULL; 62 return NULL;
63 MAGIC_CHECK_END(); 63 MAGIC_CHECK_END();
64 Evas_Object *eo_obj = NULL; 64 Evas_Object *eo_obj = eo_add(MY_CLASS, e);
65 eo_add(&eo_obj, MY_CLASS, e);
66 return eo_obj; 65 return eo_obj;
67} 66}
68 67
diff --git a/src/lib/evas/canvas/evas_canvas3d_texture.c b/src/lib/evas/canvas/evas_canvas3d_texture.c
index b058765..664de1c 100644
--- a/src/lib/evas/canvas/evas_canvas3d_texture.c
+++ b/src/lib/evas/canvas/evas_canvas3d_texture.c
@@ -313,8 +313,7 @@ evas_canvas3d_texture_add(Evas *e)
313 MAGIC_CHECK(e, Evas, MAGIC_EVAS); 313 MAGIC_CHECK(e, Evas, MAGIC_EVAS);
314 return NULL; 314 return NULL;
315 MAGIC_CHECK_END(); 315 MAGIC_CHECK_END();
316 Evas_Object *eo_obj = NULL; 316 Evas_Object *eo_obj = eo_add(MY_CLASS, e);
317 eo_add(&eo_obj, MY_CLASS, e);
318 return eo_obj; 317 return eo_obj;
319} 318}
320 319
diff --git a/src/lib/evas/canvas/evas_main.c b/src/lib/evas/canvas/evas_main.c
index 56956a7..38e901a 100644
--- a/src/lib/evas/canvas/evas_main.c
+++ b/src/lib/evas/canvas/evas_main.c
@@ -151,8 +151,7 @@ evas_shutdown(void)
151EAPI Evas * 151EAPI Evas *
152evas_new(void) 152evas_new(void)
153{ 153{
154 Evas_Object *eo_obj = NULL; 154 Evas_Object *eo_obj = eo_add(EVAS_CANVAS_CLASS, NULL);
155 eo_add(&eo_obj, EVAS_CANVAS_CLASS, NULL);
156 return eo_obj; 155 return eo_obj;
157} 156}
158 157
diff --git a/src/lib/evas/canvas/evas_object_box.c b/src/lib/evas/canvas/evas_object_box.c
index 739012e..55e7ca5 100644
--- a/src/lib/evas/canvas/evas_object_box.c
+++ b/src/lib/evas/canvas/evas_object_box.c
@@ -458,8 +458,7 @@ evas_object_box_add(Evas *evas)
458 MAGIC_CHECK(evas, Evas, MAGIC_EVAS); 458 MAGIC_CHECK(evas, Evas, MAGIC_EVAS);
459 return NULL; 459 return NULL;
460 MAGIC_CHECK_END(); 460 MAGIC_CHECK_END();
461 Evas_Object *obj = NULL; 461 Evas_Object *obj = eo_add(MY_CLASS, evas);
462 eo_add(&obj, MY_CLASS, evas);
463 return obj; 462 return obj;
464} 463}
465 464
diff --git a/src/lib/evas/canvas/evas_object_grid.c b/src/lib/evas/canvas/evas_object_grid.c
index 12b6d2b..0374b13 100644
--- a/src/lib/evas/canvas/evas_object_grid.c
+++ b/src/lib/evas/canvas/evas_object_grid.c
@@ -265,8 +265,7 @@ evas_object_grid_add(Evas *evas)
265 MAGIC_CHECK(evas, Evas, MAGIC_EVAS); 265 MAGIC_CHECK(evas, Evas, MAGIC_EVAS);
266 return NULL; 266 return NULL;
267 MAGIC_CHECK_END(); 267 MAGIC_CHECK_END();
268 Evas_Object *obj = NULL; 268 Evas_Object *obj = eo_add(MY_CLASS, evas);
269 eo_add(&obj, MY_CLASS, evas);
270 return obj; 269 return obj;
271} 270}
272 271
diff --git a/src/lib/evas/canvas/evas_object_image.c b/src/lib/evas/canvas/evas_object_image.c
index 0367fa2..f3b1d77 100644
--- a/src/lib/evas/canvas/evas_object_image.c
+++ b/src/lib/evas/canvas/evas_object_image.c
@@ -383,8 +383,7 @@ evas_object_image_add(Evas *eo_e)
383 Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS); 383 Evas_Public_Data *e = eo_data_scope_get(eo_e, EVAS_CANVAS_CLASS);
384 EINA_SAFETY_ON_NULL_RETURN_VAL(e, NULL); 384 EINA_SAFETY_ON_NULL_RETURN_VAL(e, NULL);
385 EINA_SAFETY_ON_NULL_RETURN_VAL(e->engine.func, NULL); 385 EINA_SAFETY_ON_NULL_RETURN_VAL(e->engine.func, NULL);
386 Evas_Object *eo_obj = NULL; 386 Evas_Object *eo_obj = eo_add(EVAS_IMAGE_CLASS, eo_e);
387 eo_add(&eo_obj, EVAS_IMAGE_CLASS, eo_e);
388 return eo_obj; 387 return eo_obj;
389} 388}
390 389
diff --git a/src/lib/evas/canvas/evas_object_line.c b/src/lib/evas/canvas/evas_object_line.c
index 07ef578..26dd5c7 100644
--- a/src/lib/evas/canvas/evas_object_line.c
+++ b/src/lib/evas/canvas/evas_object_line.c
@@ -97,8 +97,7 @@ evas_object_line_add(Evas *e)
97 MAGIC_CHECK(e, Evas, MAGIC_EVAS); 97 MAGIC_CHECK(e, Evas, MAGIC_EVAS);
98 return NULL; 98 return NULL;
99 MAGIC_CHECK_END(); 99 MAGIC_CHECK_END();
100 Evas_Object *eo_obj = NULL; 100 Evas_Object *eo_obj = eo_add(EVAS_LINE_CLASS, e);
101 eo_add(&eo_obj, EVAS_LINE_CLASS, e);
102 return eo_obj; 101 return eo_obj;
103} 102}
104 103
diff --git a/src/lib/evas/canvas/evas_object_polygon.c b/src/lib/evas/canvas/evas_object_polygon.c
index 10276ca..a154e37 100644
--- a/src/lib/evas/canvas/evas_object_polygon.c
+++ b/src/lib/evas/canvas/evas_object_polygon.c
@@ -98,8 +98,7 @@ evas_object_polygon_add(Evas *e)
98 MAGIC_CHECK(e, Evas, MAGIC_EVAS); 98 MAGIC_CHECK(e, Evas, MAGIC_EVAS);
99 return NULL; 99 return NULL;
100 MAGIC_CHECK_END(); 100 MAGIC_CHECK_END();
101 Evas_Object *eo_obj = NULL; 101 Evas_Object *eo_obj = eo_add(EVAS_POLYGON_CLASS, e);
102 eo_add(&eo_obj, EVAS_POLYGON_CLASS, e);
103 return eo_obj; 102 return eo_obj;
104} 103}
105 104
diff --git a/src/lib/evas/canvas/evas_object_rectangle.c b/src/lib/evas/canvas/evas_object_rectangle.c
index 212cda6..37f8266 100644
--- a/src/lib/evas/canvas/evas_object_rectangle.c
+++ b/src/lib/evas/canvas/evas_object_rectangle.c
@@ -95,8 +95,7 @@ evas_object_rectangle_add(Evas *e)
95 MAGIC_CHECK(e, Evas, MAGIC_EVAS); 95 MAGIC_CHECK(e, Evas, MAGIC_EVAS);
96 return NULL; 96 return NULL;
97 MAGIC_CHECK_END(); 97 MAGIC_CHECK_END();
98 Evas_Object *eo_obj = NULL; 98 Evas_Object *eo_obj = eo_add(EVAS_RECTANGLE_CLASS, e);
99 eo_add(&eo_obj, EVAS_RECTANGLE_CLASS, e);
100 return eo_obj; 99 return eo_obj;
101} 100}
102 101
diff --git a/src/lib/evas/canvas/evas_object_smart.c b/src/lib/evas/canvas/evas_object_smart.c
index b380f58..44c18f1 100644
--- a/src/lib/evas/canvas/evas_object_smart.c
+++ b/src/lib/evas/canvas/evas_object_smart.c
@@ -570,7 +570,7 @@ evas_object_smart_add(Evas *eo_e, Evas_Smart *s)
570 MAGIC_CHECK(eo_e, Evas, MAGIC_EVAS); 570 MAGIC_CHECK(eo_e, Evas, MAGIC_EVAS);
571 return NULL; 571 return NULL;
572 MAGIC_CHECK_END(); 572 MAGIC_CHECK_END();
573 eo_add(&eo_obj, EVAS_OBJECT_SMART_CLASS, eo_e); 573 eo_obj = eo_add(EVAS_OBJECT_SMART_CLASS, eo_e);
574 evas_obj_smart_attach(eo_obj, s); 574 evas_obj_smart_attach(eo_obj, s);
575 return eo_obj; 575 return eo_obj;
576} 576}
diff --git a/src/lib/evas/canvas/evas_object_table.c b/src/lib/evas/canvas/evas_object_table.c
index ab71ad8..60a83fd 100644
--- a/src/lib/evas/canvas/evas_object_table.c
+++ b/src/lib/evas/canvas/evas_object_table.c
@@ -964,8 +964,7 @@ evas_object_table_add(Evas *evas)
964 MAGIC_CHECK(evas, Evas, MAGIC_EVAS); 964 MAGIC_CHECK(evas, Evas, MAGIC_EVAS);
965 return NULL; 965 return NULL;
966 MAGIC_CHECK_END(); 966 MAGIC_CHECK_END();
967 Evas_Object *obj = NULL; 967 Evas_Object *obj = eo_add(MY_CLASS, evas);
968 eo_add(&obj, MY_CLASS, evas);
969 return obj; 968 return obj;
970} 969}
971 970
diff --git a/src/lib/evas/canvas/evas_object_text.c b/src/lib/evas/canvas/evas_object_text.c
index 723c8b5..a492ebd 100644
--- a/src/lib/evas/canvas/evas_object_text.c
+++ b/src/lib/evas/canvas/evas_object_text.c
@@ -372,8 +372,7 @@ evas_object_text_add(Evas *e)
372 MAGIC_CHECK(e, Evas, MAGIC_EVAS); 372 MAGIC_CHECK(e, Evas, MAGIC_EVAS);
373 return NULL; 373 return NULL;
374 MAGIC_CHECK_END(); 374 MAGIC_CHECK_END();
375 Evas_Object *eo_obj = NULL; 375 Evas_Object *eo_obj = eo_add(EVAS_TEXT_CLASS, e);
376 eo_add(&eo_obj, EVAS_TEXT_CLASS, e);
377 return eo_obj; 376 return eo_obj;
378} 377}
379 378
diff --git a/src/lib/evas/canvas/evas_object_textblock.c b/src/lib/evas/canvas/evas_object_textblock.c
index b82a691..8066f08 100644
--- a/src/lib/evas/canvas/evas_object_textblock.c
+++ b/src/lib/evas/canvas/evas_object_textblock.c
@@ -6253,8 +6253,7 @@ evas_object_textblock_add(Evas *e)
6253 MAGIC_CHECK(e, Evas, MAGIC_EVAS); 6253 MAGIC_CHECK(e, Evas, MAGIC_EVAS);
6254 return NULL; 6254 return NULL;
6255 MAGIC_CHECK_END(); 6255 MAGIC_CHECK_END();
6256 Evas_Object *eo_obj = NULL; 6256 Evas_Object *eo_obj = eo_add(EVAS_TEXTBLOCK_CLASS, e);
6257 eo_add(&eo_obj, EVAS_TEXTBLOCK_CLASS, e);
6258 return eo_obj; 6257 return eo_obj;
6259} 6258}
6260 6259
diff --git a/src/lib/evas/canvas/evas_object_textgrid.c b/src/lib/evas/canvas/evas_object_textgrid.c
index bcbc186..8742a4c 100644
--- a/src/lib/evas/canvas/evas_object_textgrid.c
+++ b/src/lib/evas/canvas/evas_object_textgrid.c
@@ -1056,8 +1056,7 @@ evas_object_textgrid_add(Evas *e)
1056 MAGIC_CHECK(e, Evas, MAGIC_EVAS); 1056 MAGIC_CHECK(e, Evas, MAGIC_EVAS);
1057 return NULL; 1057 return NULL;
1058 MAGIC_CHECK_END(); 1058 MAGIC_CHECK_END();
1059 Evas_Object *eo_obj = NULL; 1059 Evas_Object *eo_obj = eo_add(EVAS_TEXTGRID_CLASS, e);
1060 eo_add(&eo_obj, EVAS_TEXTGRID_CLASS, e);
1061 return eo_obj; 1060 return eo_obj;
1062} 1061}
1063 1062
diff --git a/src/lib/evas/canvas/evas_object_vg.c b/src/lib/evas/canvas/evas_object_vg.c
index 1b915e4..929b584 100644
--- a/src/lib/evas/canvas/evas_object_vg.c
+++ b/src/lib/evas/canvas/evas_object_vg.c
@@ -81,8 +81,7 @@ evas_object_vg_add(Evas *e)
81 MAGIC_CHECK(e, Evas, MAGIC_EVAS); 81 MAGIC_CHECK(e, Evas, MAGIC_EVAS);
82 return NULL; 82 return NULL;
83 MAGIC_CHECK_END(); 83 MAGIC_CHECK_END();
84 Evas_Object *eo_obj = NULL; 84 Evas_Object *eo_obj = eo_add(MY_CLASS, e);
85 eo_add(&eo_obj, MY_CLASS, e);
86 85
87 // Ask backend to return the main Ector_Surface 86 // Ask backend to return the main Ector_Surface
88 87
@@ -138,7 +137,7 @@ _evas_vg_eo_base_constructor(Eo *eo_obj, Evas_VG_Data *pd)
138 obj->type = o_type; 137 obj->type = o_type;
139 138
140 /* root node */ 139 /* root node */
141 eo_add(&pd->root, EFL_VG_ROOT_NODE_CLASS, eo_obj); 140 pd->root = eo_add(EFL_VG_ROOT_NODE_CLASS, eo_obj);
142 eo_ref(pd->root); 141 eo_ref(pd->root);
143 142
144 eina_array_step_set(&pd->cleanup, sizeof(pd->cleanup), 8); 143 eina_array_step_set(&pd->cleanup, sizeof(pd->cleanup), 8);
diff --git a/src/lib/evas/canvas/evas_out.c b/src/lib/evas/canvas/evas_out.c
index fdf4f95..73c902c 100644
--- a/src/lib/evas/canvas/evas_out.c
+++ b/src/lib/evas/canvas/evas_out.c
@@ -19,8 +19,7 @@ evas_out_add(Evas *e)
19 MAGIC_CHECK(e, Evas, MAGIC_EVAS); 19 MAGIC_CHECK(e, Evas, MAGIC_EVAS);
20 return NULL; 20 return NULL;
21 MAGIC_CHECK_END(); 21 MAGIC_CHECK_END();
22 Evas_Object *eo_obj = NULL; 22 Evas_Object *eo_obj = eo_add(MY_CLASS, e);
23 eo_add(&eo_obj, MY_CLASS, e);
24 return eo_obj; 23 return eo_obj;
25} 24}
26 25
diff --git a/src/lib/evas/canvas/evas_vg_container.c b/src/lib/evas/canvas/evas_vg_container.c
index 7491c3a..7d766a5 100644
--- a/src/lib/evas/canvas/evas_vg_container.c
+++ b/src/lib/evas/canvas/evas_vg_container.c
@@ -155,16 +155,14 @@ _efl_vg_container_efl_vg_base_dup(Eo *obj,
155 { 155 {
156 // By setting parent, we automatically reference 156 // By setting parent, we automatically reference
157 // this new object as a child of obj. Magic at work ! 157 // this new object as a child of obj. Magic at work !
158 Eo *tmp = NULL; 158 (void) eo_add_ref(eo_class_get(child), obj, efl_vg_dup(eoid, child));
159 eo_add_ref(&tmp, eo_class_get(child), obj, efl_vg_dup(tmp, child));
160 } 159 }
161} 160}
162 161
163EAPI Efl_VG* 162EAPI Efl_VG*
164evas_vg_container_add(Efl_VG *parent) 163evas_vg_container_add(Efl_VG *parent)
165{ 164{
166 Eo *ret = NULL; 165 return eo_add(EFL_VG_CONTAINER_CLASS, parent);
167 return eo_add(&ret, EFL_VG_CONTAINER_CLASS, parent);
168} 166}
169 167
170#include "efl_vg_container.eo.c" 168#include "efl_vg_container.eo.c"
diff --git a/src/lib/evas/canvas/evas_vg_node.c b/src/lib/evas/canvas/evas_vg_node.c
index fed256b..2ae9135 100644
--- a/src/lib/evas/canvas/evas_vg_node.c
+++ b/src/lib/evas/canvas/evas_vg_node.c
@@ -779,7 +779,7 @@ _efl_vg_base_dup(Eo *obj, Efl_VG_Base_Data *pd, const Efl_VG_Base *from)
779 if (fromd->mask) 779 if (fromd->mask)
780 { 780 {
781 Eo *tmp = pd->mask; 781 Eo *tmp = pd->mask;
782 eo_add(&pd->mask, eo_class_get(fromd->mask), obj, efl_vg_dup(pd->mask, tmp)); 782 pd->mask = eo_add(eo_class_get(fromd->mask), obj, efl_vg_dup(eoid, tmp));
783 } 783 }
784 784
785 pd->x = fromd->x; 785 pd->x = fromd->x;
diff --git a/src/lib/evas/canvas/evas_vg_shape.c b/src/lib/evas/canvas/evas_vg_shape.c
index 9d49735..312953a 100644
--- a/src/lib/evas/canvas/evas_vg_shape.c
+++ b/src/lib/evas/canvas/evas_vg_shape.c
@@ -232,17 +232,17 @@ _efl_vg_shape_efl_vg_base_dup(Eo *obj, Efl_VG_Shape_Data *pd EINA_UNUSED, const
232 232
233 if (fromd->fill) 233 if (fromd->fill)
234 { 234 {
235 eo_add(&fill, eo_class_get(fromd->fill), parent, efl_vg_dup(fill, fromd->fill)); 235 fill = eo_add(eo_class_get(fromd->fill), parent, efl_vg_dup(eoid, fromd->fill));
236 } 236 }
237 237
238 if (fromd->stroke.fill) 238 if (fromd->stroke.fill)
239 { 239 {
240 eo_add(&stroke_fill, eo_class_get(fromd->stroke.fill), parent, efl_vg_dup(stroke_fill, fromd->stroke.fill)); 240 stroke_fill = eo_add(eo_class_get(fromd->stroke.fill), parent, efl_vg_dup(eoid, fromd->stroke.fill));
241 } 241 }
242 242
243 if (fromd->stroke.marker) 243 if (fromd->stroke.marker)
244 { 244 {
245 eo_add(&stroke_marker, eo_class_get(fromd->stroke.marker), parent, efl_vg_dup(stroke_marker, fromd->stroke.marker)); 245 stroke_marker = eo_add(eo_class_get(fromd->stroke.marker), parent, efl_vg_dup(eoid, fromd->stroke.marker));
246 } 246 }
247 247
248 efl_vg_shape_fill_set(obj, fill); 248 efl_vg_shape_fill_set(obj, fill);
@@ -458,8 +458,7 @@ evas_vg_shape_shape_equal_commands(Eo *obj, const Eo *with)
458EAPI Efl_VG* 458EAPI Efl_VG*
459evas_vg_shape_add(Efl_VG *parent) 459evas_vg_shape_add(Efl_VG *parent)
460{ 460{
461 Eo *ret = NULL; 461 return eo_add(EFL_VG_SHAPE_CLASS, parent);
462 return eo_add(&ret, EFL_VG_SHAPE_CLASS, parent);
463} 462}
464 463
465#include "efl_vg_shape.eo.c" 464#include "efl_vg_shape.eo.c"