]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
unref the item in foreach as Gee.Iterator.get () transfers ownership
authorJuerg Billeter <j@bitron.ch>
Thu, 26 Jul 2007 16:38:29 +0000 (16:38 +0000)
committerJürg Billeter <juergbi@src.gnome.org>
Thu, 26 Jul 2007 16:38:29 +0000 (16:38 +0000)
2007-07-26  Juerg Billeter  <j@bitron.ch>

* gobject/valacodegenerator.vala: unref the item in foreach as
  Gee.Iterator.get () transfers ownership

svn path=/trunk/; revision=393

ChangeLog
gobject/valacodegenerator.vala

index 65aabd2866d132a8e0ac3db46d73527e9218df93..b906ed3ba05a99524bd66d1cd7bcd3368ec0e46a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2007-07-26  Jürg Billeter  <j@bitron.ch>
+
+       * gobject/valacodegenerator.vala: unref the item in foreach as
+         Gee.Iterator.get () transfers ownership
+
 2007-07-26  Jürg Billeter  <j@bitron.ch>
 
        * gobject/valacodegeneratorclass.vala, vapi/glib-2.0.vala: support
index 431df52075676a43c55791e718484631230c2562..9c5dc83e18157979a57f91b6856918e4e5983623 100644 (file)
@@ -1471,6 +1471,8 @@ public class Vala.CodeGenerator : CodeVisitor {
                        cbody.add_statement (cdecl);
                        
                        cbody.add_statement (stmt.body.ccodenode);
+
+                       cbody.add_statement (new CCodeExpressionStatement (get_unref_expression (new CCodeIdentifier (stmt.variable_name), stmt.type_reference, null)));
                        
                        var next_method = (Method) iterator_type.scope.lookup ("next");
                        var next_ccall = new CCodeFunctionCall (new CCodeIdentifier (next_method.get_cname ()));