Merge pull request #16016 from neikeq/issue-13316

Fix CSharpInstance::call not initializing CallError
This commit is contained in:
Ignacio Etcheverry 2018-01-24 01:35:10 +01:00 committed by GitHub
commit e1ae7dffd3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -1133,10 +1133,13 @@ Variant CSharpInstance::call(const StringName &p_method, const Variant **p_args,
MonoObject *mono_object = get_mono_object();
ERR_FAIL_NULL_V(mono_object, Variant());
if (!mono_object) {
r_error.error = Variant::CallError::CALL_ERROR_INSTANCE_IS_NULL;
ERR_FAIL_V(Variant());
}
if (!script.is_valid())
return Variant();
ERR_FAIL_V(Variant());
GDMonoClass *top = script->script_class;
@ -1146,6 +1149,8 @@ Variant CSharpInstance::call(const StringName &p_method, const Variant **p_args,
if (method) {
MonoObject *return_value = method->invoke(mono_object, p_args);
r_error.error = Variant::CallError::CALL_OK;
if (return_value) {
return GDMonoMarshal::mono_object_to_variant(return_value);
} else {