diff options
author | Jürg Billeter <j@bitron.ch> | 2009-02-20 17:04:24 +0000 |
---|---|---|
committer | Jürg Billeter <juergbi@src.gnome.org> | 2009-02-20 17:04:24 +0000 |
commit | d84521d25177f25a5c9291f0006ff85345e9503f (patch) | |
tree | 64489c226518d54a527a19aba8c4ba24031d6c97 | |
parent | 5e7773353c5a13cb6b9f04fd81bf636cdbea647f (diff) | |
download | vala-d84521d25177f25a5c9291f0006ff85345e9503f.tar.gz |
Support error handling when dynamically calling void methods, patch by
2009-02-20 Jürg Billeter <j@bitron.ch>
* gobject/valadbusclientmodule.vala:
Support error handling when dynamically calling void methods,
patch by Frederik Sdun, fixes bug 571258
svn path=/trunk/; revision=2464
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | THANKS | 1 | ||||
-rw-r--r-- | gobject/valadbusclientmodule.vala | 8 |
3 files changed, 10 insertions, 6 deletions
@@ -1,5 +1,12 @@ 2009-02-20 Jürg Billeter <j@bitron.ch> + * gobject/valadbusclientmodule.vala: + + Support error handling when dynamically calling void methods, + patch by Frederik Sdun, fixes bug 571258 + +2009-02-20 Jürg Billeter <j@bitron.ch> + * gobject-introspection/scanner.c: Include unistd.h to support compilation with @@ -30,6 +30,7 @@ Evan Nemerson Florian Brosch Francisco Camenforte Torres Frederik +Frederik Sdun Gabriel Falcão Geert Jan Alsem Götz Waschk diff --git a/gobject/valadbusclientmodule.vala b/gobject/valadbusclientmodule.vala index d36ef9e18..ddb45dd08 100644 --- a/gobject/valadbusclientmodule.vala +++ b/gobject/valadbusclientmodule.vala @@ -184,12 +184,10 @@ internal class Vala.DBusClientModule : DBusModule { ccall.add_argument (new CCodeIdentifier (cb_fun.name)); ccall.add_argument (new CCodeConstant ("param%d_target".printf (callback_index))); ccall.add_argument (new CCodeConstant ("NULL")); - } else if (found_out || !(method.return_type is VoidType)) { + } else { ccall.call = new CCodeIdentifier ("dbus_g_proxy_call"); ccall.add_argument (new CCodeIdentifier ("error")); - } else { - ccall.call = new CCodeIdentifier ("dbus_g_proxy_call_no_reply"); } foreach (FormalParameter param in method.get_parameters ()) { @@ -433,9 +431,7 @@ internal class Vala.DBusClientModule : DBusModule { block.add_statement (new CCodeReturnStatement (new CCodeIdentifier ("result"))); } } else { - if (found_out) { - ccall.add_argument (new CCodeIdentifier ("G_TYPE_INVALID")); - } + ccall.add_argument (new CCodeIdentifier ("G_TYPE_INVALID")); block.add_statement (new CCodeExpressionStatement (ccall)); |