Răsfoiți Sursa

Merge pull request #16986 from neikeq/issue-16983

Mono: Fix bindings for parameters in vararg methods
Ignacio Etcheverry 7 ani în urmă
părinte
comite
71602c7491
1 a modificat fișierele cu 3 adăugiri și 3 ștergeri
  1. 3 3
      modules/mono/editor/bindings_generator.cpp

+ 3 - 3
modules/mono/editor/bindings_generator.cpp

@@ -1528,9 +1528,9 @@ Error BindingsGenerator::_generate_glue_method(const BindingsGenerator::TypeInte
 		if (p_imethod.is_vararg) {
 		if (p_imethod.is_vararg) {
 			if (i < p_imethod.arguments.size() - 1) {
 			if (i < p_imethod.arguments.size() - 1) {
 				c_in_statements += sformat(arg_type->c_in.size() ? arg_type->c_in : TypeInterface::DEFAULT_VARARG_C_IN, "Variant", c_param_name);
 				c_in_statements += sformat(arg_type->c_in.size() ? arg_type->c_in : TypeInterface::DEFAULT_VARARG_C_IN, "Variant", c_param_name);
-				c_in_statements += "\t" C_LOCAL_PTRCALL_ARGS ".set(0, ";
-				c_in_statements += sformat("&%s_in", c_param_name);
-				c_in_statements += ");\n";
+				c_in_statements += "\t" C_LOCAL_PTRCALL_ARGS ".set(";
+				c_in_statements += itos(i);
+				c_in_statements += sformat(", &%s_in);\n", c_param_name);
 			}
 			}
 		} else {
 		} else {
 			if (i > 0)
 			if (i > 0)