You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-06 12:20:30 +00:00
Merge pull request #44106 from neikeq/mono-invoke-no-params-boxing
Don't box params on Native->C# calls with Variant params
This commit is contained in:
@@ -101,11 +101,15 @@ void SignalAwaiterCallable::call(const Variant **p_arguments, int p_argcount, Va
|
||||
"Resumed after await, but class instance is gone.");
|
||||
#endif
|
||||
|
||||
MonoArray *signal_args = mono_array_new(mono_domain_get(), CACHED_CLASS_RAW(MonoObject), p_argcount);
|
||||
MonoArray *signal_args = nullptr;
|
||||
|
||||
for (int i = 0; i < p_argcount; i++) {
|
||||
MonoObject *boxed = GDMonoMarshal::variant_to_mono_object(*p_arguments[i]);
|
||||
mono_array_setref(signal_args, i, boxed);
|
||||
if (p_argcount > 0) {
|
||||
signal_args = mono_array_new(mono_domain_get(), CACHED_CLASS_RAW(MonoObject), p_argcount);
|
||||
|
||||
for (int i = 0; i < p_argcount; i++) {
|
||||
MonoObject *boxed = GDMonoMarshal::variant_to_mono_object(*p_arguments[i]);
|
||||
mono_array_setref(signal_args, i, boxed);
|
||||
}
|
||||
}
|
||||
|
||||
MonoObject *awaiter = awaiter_handle.get_target();
|
||||
|
||||
Reference in New Issue
Block a user