1
0
mirror of https://github.com/godotengine/godot.git synced 2025-12-02 16:48:55 +00:00

Android: Fix memory issues in _variant_to_jvalue()

This commit is contained in:
David Snopek
2025-11-25 13:32:07 -06:00
parent 9dd6c4dbac
commit c2f8d1a29b
7 changed files with 70 additions and 77 deletions

View File

@@ -91,8 +91,7 @@ JNIEXPORT jobject JNICALL Java_org_godotengine_godot_variant_Callable_nativeCall
Callable::CallError err;
Variant result;
callable.callp(argptrs, count, result, err);
jvalue jresult = _variant_to_jvalue(p_env, result.get_type(), &result, true);
ret = jresult.l;
ret = _variant_to_jobject(p_env, result.get_type(), &result);
}
// Manually invoke the destructor to decrease the reference counts for the variant arguments.
@@ -107,8 +106,7 @@ JNIEXPORT jobject JNICALL Java_org_godotengine_godot_variant_Callable_nativeCall
Callable callable = _generate_callable(p_env, p_object_id, p_method_name, p_parameters);
if (callable.is_valid()) {
Variant result = callable.call();
jvalue jresult = _variant_to_jvalue(p_env, result.get_type(), &result, true);
return jresult.l;
return _variant_to_jobject(p_env, result.get_type(), &result);
} else {
return nullptr;
}