Skip to content

Commit 58ed33c

Browse files
committed
Correct Rust -> Java method call semantics to avoid double-conversion
1 parent 43c61db commit 58ed33c

File tree

2 files changed

+2
-2
lines changed

2 files changed

+2
-2
lines changed

java_strings.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -849,7 +849,7 @@ def native_c_map_trait(self, struct_name, field_vars, flattened_field_vars, fiel
849849
elif not fn_line.ret_ty_info.passed_as_ptr:
850850
out_c += "\t" + fn_line.ret_ty_info.c_ty + " ret = (*env)->Call" + fn_line.ret_ty_info.java_ty.title() + "Method(env, obj, j_calls->" + fn_line.fn_name + "_meth"
851851
else:
852-
out_c = out_c + "\t" + fn_line.ret_ty_info.rust_obj + "* ret = (" + fn_line.ret_ty_info.rust_obj + "*)(*env)->CallLongMethod(env, obj, j_calls->" + fn_line.fn_name + "_meth"
852+
out_c = out_c + "\tuint64_t ret = (*env)->CallLongMethod(env, obj, j_calls->" + fn_line.fn_name + "_meth"
853853

854854
for idx, arg_info in enumerate(fn_line.args_ty):
855855
if arg_info.ret_conv is not None:

typescript_strings.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -723,7 +723,7 @@ class {struct_name}Holder {{
723723
elif not fn_line.ret_ty_info.passed_as_ptr:
724724
out_c = out_c + "\treturn js_invoke_function_" + str(len(fn_line.args_ty)) + "(j_calls->" + fn_line.fn_name + "_meth"
725725
else:
726-
out_c = out_c + "\t" + fn_line.ret_ty_info.rust_obj + "* ret = (" + fn_line.ret_ty_info.rust_obj + "*)js_invoke_function_" + str(len(fn_line.args_ty)) + "(j_calls->" + fn_line.fn_name + "_meth"
726+
out_c = out_c + "\tuint32_t ret = js_invoke_function_" + str(len(fn_line.args_ty)) + "(j_calls->" + fn_line.fn_name + "_meth"
727727

728728
for idx, arg_info in enumerate(fn_line.args_ty):
729729
if arg_info.ret_conv is not None:

0 commit comments

Comments
 (0)