From 03b22c4d7b41c2310b4c25ed7ce8543942d638d5 Mon Sep 17 00:00:00 2001 From: Jean-Philippe Andre Date: Wed, 1 Nov 2017 22:01:11 +0900 Subject: [PATCH] cxx: Instantiate objects with 2 refs This is the original meaning of efl_add_ref(). Somehow the "ref" bool was set to true in the first call, and false in the second call. --- src/bindings/cxx/eo_cxx/eo_cxx_interop.hh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/bindings/cxx/eo_cxx/eo_cxx_interop.hh b/src/bindings/cxx/eo_cxx/eo_cxx_interop.hh index 17cc390270..72c435e4d7 100644 --- a/src/bindings/cxx/eo_cxx/eo_cxx_interop.hh +++ b/src/bindings/cxx/eo_cxx/eo_cxx_interop.hh @@ -847,7 +847,7 @@ inline void do_eo_add(Eo*& object, P const& parent , typename std::enable_if< eo::is_eolian_object

::value>::type* = 0) { object = ::_efl_add_internal_start(__FILE__, __LINE__, klass, parent._eo_ptr(), EINA_TRUE, EINA_FALSE); - object = ::_efl_add_end(object, EINA_FALSE, EINA_FALSE); + object = ::_efl_add_end(object, EINA_TRUE, EINA_FALSE); } template @@ -873,7 +873,7 @@ void do_eo_add(Eo*& object, P const& parent, Efl_Class const* klass { object = ::_efl_add_internal_start(__FILE__, __LINE__, klass, parent._eo_ptr(), EINA_TRUE, EINA_FALSE); ::efl::eolian::call_lambda(std::forward(f), proxy); - object = ::_efl_add_end(object, EINA_FALSE, EINA_FALSE); + object = ::_efl_add_end(object, EINA_TRUE, EINA_FALSE); } template