summaryrefslogtreecommitdiffstats
path: root/core/object/make_virtuals.py
diff options
context:
space:
mode:
authorRémi Verschelde <remi@verschelde.fr>2022-02-03 20:36:59 +0100
committerGitHub <noreply@github.com>2022-02-03 20:36:59 +0100
commit7191605324fe04d16ffaf30c31ec808624cc17a2 (patch)
treef966d9374d6ffd1dfa7002ee3e39e45bee372ea2 /core/object/make_virtuals.py
parentbf0253bab936f053bb5ae56e6fcf67defaf9afbc (diff)
parentddd96b30594eb06de7d2f9a6fe3fcb10709e1c81 (diff)
downloadredot-engine-7191605324fe04d16ffaf30c31ec808624cc17a2.tar.gz
Merge pull request #57587 from bruvzg/gde_fix_ptr_and_enum_returns
[GDExtension] Fix registration of functions with enum or native pointer return type.
Diffstat (limited to 'core/object/make_virtuals.py')
-rw-r--r--core/object/make_virtuals.py4
1 files changed, 2 insertions, 2 deletions
diff --git a/core/object/make_virtuals.py b/core/object/make_virtuals.py
index e961745d96..5de1b49026 100644
--- a/core/object/make_virtuals.py
+++ b/core/object/make_virtuals.py
@@ -123,9 +123,9 @@ def generate_version(argcount, const=False, returns=False):
callargtext += ","
callargtext += " m_ret& r_ret"
s = s.replace("$CALLSIBEGIN", "Variant ret = ")
- s = s.replace("$CALLSIRET", "r_ret = ret;")
+ s = s.replace("$CALLSIRET", "r_ret = VariantCaster<m_ret>::cast(ret);")
s = s.replace("$CALLPTRRETPASS", "&ret")
- s = s.replace("$CALLPTRRET", "r_ret = ret;")
+ s = s.replace("$CALLPTRRET", "r_ret = (m_ret)ret;")
else:
s = s.replace("$CALLSIBEGIN", "")
s = s.replace("$CALLSIRET", "")