]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
Support error propagation from base constructor, fixes bug 564984
authorJürg Billeter <j@bitron.ch>
Thu, 18 Dec 2008 14:11:37 +0000 (14:11 +0000)
committerJürg Billeter <juergbi@src.gnome.org>
Thu, 18 Dec 2008 14:11:37 +0000 (14:11 +0000)
2008-12-18  Jürg Billeter  <j@bitron.ch>

* gobject/valaccodemethodcallmodule.vala:

Support error propagation from base constructor, fixes bug 564984

svn path=/trunk/; revision=2211

ChangeLog
gobject/valaccodemethodcallmodule.vala

index 68761408b06f39f643f8c26a495e0a3fc8b51da0..86600fa1a6f1680046363dd689b8adb45b17b8bb 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2008-12-18  Jürg Billeter  <j@bitron.ch>
+
+       * gobject/valaccodemethodcallmodule.vala:
+
+       Support error propagation from base constructor, fixes bug 564984
+
 2008-12-18  Jürg Billeter  <j@bitron.ch>
 
        * gobject/valaccodemethodmodule.vala:
index 95b05ab4015b92870b9482b38f3fb35e3d7d4b7c..2c56cd158f2aa4865235e0c8144a6fdf16c6d57b 100644 (file)
@@ -362,7 +362,9 @@ public class Vala.CCodeMethodCallModule : CCodeAssignmentModule {
                        }
                }
 
-               if (expr.tree_can_fail) {
+               if (m is CreationMethod && m.get_error_types ().size > 0) {
+                       carg_map.set (get_param_pos (-1), new CCodeIdentifier ("error"));
+               } else if (expr.tree_can_fail) {
                        // method can fail
                        current_method_inner_error = true;
                        // add &inner_error before the ellipsis arguments