From 3ede538fcb2c2ac9039b47da473059821c122df4 Mon Sep 17 00:00:00 2001 From: Wojciech Figat Date: Wed, 26 Oct 2022 15:59:34 +0200 Subject: [PATCH] Add support for non-const ref parameters with conversion (eg. string or array) in scripting api function parameters --- Source/Tools/Flax.Build/Bindings/BindingsGenerator.Cpp.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Source/Tools/Flax.Build/Bindings/BindingsGenerator.Cpp.cs b/Source/Tools/Flax.Build/Bindings/BindingsGenerator.Cpp.cs index badba79d6..dde0c126b 100644 --- a/Source/Tools/Flax.Build/Bindings/BindingsGenerator.Cpp.cs +++ b/Source/Tools/Flax.Build/Bindings/BindingsGenerator.Cpp.cs @@ -914,7 +914,8 @@ namespace Flax.Build.Bindings contents.Append(parameterInfo.Name); // Special case for output result parameters that needs additional converting from native to managed format (such as non-POD structures, output arrays, etc.) - if (parameterInfo.IsOut) + var isRefOut = parameterInfo.IsRef && parameterInfo.Type.IsRef && !parameterInfo.Type.IsConst; + if (parameterInfo.IsOut || isRefOut) { bool convertOutputParameter = false; var apiType = FindApiTypeInfo(buildData, parameterInfo.Type, caller);