From 6f3c784b5158eca0e43a1d4d38fccae59d3f4520 Mon Sep 17 00:00:00 2001 From: Zhehang Ding Date: Mon, 1 Aug 2022 23:30:31 -0700 Subject: [PATCH] Fix Ref return --- include/godot_cpp/classes/ref.hpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/include/godot_cpp/classes/ref.hpp b/include/godot_cpp/classes/ref.hpp index 671551fd6..eb02d02ba 100644 --- a/include/godot_cpp/classes/ref.hpp +++ b/include/godot_cpp/classes/ref.hpp @@ -246,7 +246,12 @@ struct PtrToArg> { typedef Ref EncodeT; _FORCE_INLINE_ static void encode(Ref p_val, const void *p_ptr) { - *(void **)p_ptr = p_val->_owner; + if (p_val != nullptr) { + p_val->reference(); + *(void**)p_ptr = p_val->_owner; + } else { + *(void**)p_ptr = nullptr; + } } };