summaryrefslogtreecommitdiffstats
path: root/modules/mono/mono_gd/gd_mono_utils.cpp
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2020-01-13 22:01:11 +0100
committerGitHub <noreply@github.com>2020-01-13 22:01:11 +0100
commitf06372cb7326dedfb1882a024a97bff29ac73e28 (patch)
treecb1a705f2f4ce2f973a1c8fb5c9c2d4e9465bbd8 /modules/mono/mono_gd/gd_mono_utils.cpp
parent1d129f9becad39f60252a672eb2cf0e14056939d (diff)
parenta6a5ef0fd690123d8f646bca47f7ae6e2ad3bbfe (diff)
downloadredot-engine-f06372cb7326dedfb1882a024a97bff29ac73e28.tar.gz
Merge pull request #35097 from neikeq/issue-34954
Mono/C#: Fix _update_exports() leaking temporary Object/Node instances
Diffstat (limited to 'modules/mono/mono_gd/gd_mono_utils.cpp')
-rw-r--r--modules/mono/mono_gd/gd_mono_utils.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/modules/mono/mono_gd/gd_mono_utils.cpp b/modules/mono/mono_gd/gd_mono_utils.cpp
index 3c8aa0c727..6bb9f28a32 100644
--- a/modules/mono/mono_gd/gd_mono_utils.cpp
+++ b/modules/mono/mono_gd/gd_mono_utils.cpp
@@ -115,6 +115,7 @@ MonoObject *unmanaged_get_managed(Object *unmanaged) {
// but the managed instance is alive, the refcount will be 1 instead of 0.
// See: godot_icall_Reference_Dtor(MonoObject *p_obj, Object *p_ptr)
ref->reference();
+ CSharpLanguage::get_singleton()->post_unsafe_reference(ref);
}
return mono_object;