From: Jürg Billeter Date: Thu, 22 Oct 2009 20:05:16 +0000 (+0200) Subject: D-Bus: Fix signals with string array parameters in dynamic clients X-Git-Tag: 0.7.8~24 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=df58c3a91261eaae3d7cadea02ed1ee437ede2a7;p=thirdparty%2Fvala.git D-Bus: Fix signals with string array parameters in dynamic clients Fixes bug 599071. --- diff --git a/codegen/valaccodedelegatemodule.vala b/codegen/valaccodedelegatemodule.vala index 4f656d75f..e98255043 100644 --- a/codegen/valaccodedelegatemodule.vala +++ b/codegen/valaccodedelegatemodule.vala @@ -368,6 +368,14 @@ internal class Vala.CCodeDelegateModule : CCodeArrayModule { var d_params = d.get_parameters (); foreach (FormalParameter param in d_params) { + if (dynamic_sig != null + && param.parameter_type is ArrayType + && ((ArrayType) param.parameter_type).element_type.data_type == string_type.data_type) { + // use null-terminated string arrays for dynamic signals for compatibility reasons + param.no_array_length = true; + param.array_null_terminated = true; + } + generate_parameter (param, source_declarations, cparam_map, null); } if (!d.no_array_length && d.return_type is ArrayType) {