From a944002529d04b1e558eeedad0deddf4a0bb9b07 Mon Sep 17 00:00:00 2001 From: Juerg Billeter Date: Thu, 8 May 2008 21:02:22 +0000 Subject: [PATCH] Fix string return type for marshallers, patch by Yu Feng, fixes bug 531137 2008-05-08 Juerg Billeter * gobject/valaccodegeneratorsignal.vala: Fix string return type for marshallers, patch by Yu Feng, fixes bug 531137 svn path=/trunk/; revision=1348 --- ChangeLog | 7 +++++++ gobject/valaccodegeneratorsignal.vala | 4 ++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 72791dc..8c3cc07 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,12 @@ 2008-05-08 Jürg Billeter + * gobject/valaccodegeneratorsignal.vala: + + Fix string return type for marshallers, + patch by Yu Feng, fixes bug 531137 + +2008-05-08 Jürg Billeter + * gobject/valaccodeclassbinding.vala: Support properties in D-Bus services, diff --git a/gobject/valaccodegeneratorsignal.vala b/gobject/valaccodegeneratorsignal.vala index 23ce5a2..f193f26 100644 --- a/gobject/valaccodegeneratorsignal.vala +++ b/gobject/valaccodegeneratorsignal.vala @@ -251,10 +251,10 @@ public class Vala.CCodeGenerator { set_fc = new CCodeFunctionCall (new CCodeIdentifier ("g_value_set_pointer")); } else if (return_type is ErrorType) { set_fc = new CCodeFunctionCall (new CCodeIdentifier ("g_value_set_pointer")); - } else if (return_type.data_type is Class || return_type.data_type is Interface) { - set_fc = new CCodeFunctionCall (new CCodeIdentifier ("g_value_take_object")); } else if (return_type.data_type == string_type.data_type) { set_fc = new CCodeFunctionCall (new CCodeIdentifier ("g_value_take_string")); + } else if (return_type.data_type is Class || return_type.data_type is Interface) { + set_fc = new CCodeFunctionCall (new CCodeIdentifier ("g_value_take_object")); } else { set_fc = new CCodeFunctionCall (new CCodeIdentifier (return_type.data_type.get_set_value_function ())); } -- 2.7.4