]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
Fix assigning to properties in lambda expressions in creation methods,
authorJürg Billeter <j@bitron.ch>
Mon, 19 Jan 2009 08:06:38 +0000 (08:06 +0000)
committerJürg Billeter <juergbi@src.gnome.org>
Mon, 19 Jan 2009 08:06:38 +0000 (08:06 +0000)
2009-01-19  Jürg Billeter  <j@bitron.ch>

* gobject/valaccodemethodmodule.vala:

Fix assigning to properties in lambda expressions in creation
methods, patch by Yu Feng, fixes bug 568267

svn path=/trunk/; revision=2392

ChangeLog
gobject/valaccodemethodmodule.vala

index e370e6b0846188c2f0d3779363abf0f91e2fecd3..ed28a9a66db90671dba310fa57e40198ed1b0254 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2009-01-19  Jürg Billeter  <j@bitron.ch>
+
+       * gobject/valaccodemethodmodule.vala:
+
+       Fix assigning to properties in lambda expressions in creation
+       methods, patch by Yu Feng, fixes bug 568267
+
 2009-01-18  Thijs Vermeir  <thijsvermeir@gmail.com>
 
        * vapi/packages/gstreamer-0.10/gstreamer-0.10.metadata:
index de786de27880f525b11614e995193d0b9c9bc0de..9f7817ebe46da1041c20a1e1375bb4dbf0e70de2 100644 (file)
@@ -61,6 +61,7 @@ public class Vala.CCodeMethodModule : CCodeStructModule {
                Method old_method = current_method;
                DataType old_return_type = current_return_type;
                bool old_method_inner_error = current_method_inner_error;
+               bool old_in_creation_method = in_creation_method;
                int old_next_temp_var_id = next_temp_var_id;
                var old_variable_name_map = variable_name_map;
                var old_try = current_try;
@@ -96,6 +97,8 @@ public class Vala.CCodeMethodModule : CCodeStructModule {
                        if (cl != null) {
                                current_return_type = new ObjectType (cl);
                        }
+               } else {
+                       in_creation_method = false;
                }
 
                var creturn_type = current_return_type;
@@ -153,7 +156,7 @@ public class Vala.CCodeMethodModule : CCodeStructModule {
                                m.body.ccodenode = cblock;
                        }
 
-                       in_creation_method = false;
+                       in_creation_method = old_in_creation_method;
                }
 
                bool inner_error = current_method_inner_error;