diff --git a/modules/mono/mono_gd/gd_mono_method.cpp b/modules/mono/mono_gd/gd_mono_method.cpp index df0985f6ac4..69040a3df89 100644 --- a/modules/mono/mono_gd/gd_mono_method.cpp +++ b/modules/mono/mono_gd/gd_mono_method.cpp @@ -230,11 +230,12 @@ String GDMonoMethod::get_signature_desc(bool p_namespaces) const { } void GDMonoMethod::get_parameter_names(Vector &names) const { - const char *_names[params_count]; - mono_method_get_param_names(mono_method, _names); + const char *_names = memnew_arr(char, params_count); + mono_method_get_param_names(mono_method, &_names); for (int i = 0; i < params_count; ++i) { - names.push_back(StringName(_names[i])); + names.push_back(StringName(&_names[i])); } + memdelete_arr(_names); } void GDMonoMethod::get_parameter_types(Vector &types) const {