From 3127b97755d15a5dbbef8e706c0f66efc0bf14db Mon Sep 17 00:00:00 2001 From: =?utf8?q?J=C3=BCrg=20Billeter?= Date: Sun, 15 Jun 2008 23:06:39 +0000 Subject: [PATCH] Free local variables when throwing error, fixes bug 538520 MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit 2008-06-16 Jürg Billeter * gobject/valaccodegenerator.vala: Free local variables when throwing error, fixes bug 538520 svn path=/trunk/; revision=1596 --- ChangeLog | 6 ++++++ gobject/valaccodegenerator.vala | 5 +++++ 2 files changed, 11 insertions(+) diff --git a/ChangeLog b/ChangeLog index eda4fcb..84f365b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,11 @@ 2008-06-16 Jürg Billeter + * gobject/valaccodegenerator.vala: + + Free local variables when throwing error, fixes bug 538520 + +2008-06-16 Jürg Billeter + * vapi/Makefile.am: * vapi/sdl-net.vapi: diff --git a/gobject/valaccodegenerator.vala b/gobject/valaccodegenerator.vala index 4eb0823..683eaaf 100644 --- a/gobject/valaccodegenerator.vala +++ b/gobject/valaccodegenerator.vala @@ -1645,6 +1645,11 @@ public class Vala.CCodeGenerator : CodeGenerator { var cerror_block = new CCodeBlock (); cerror_block.add_statement (new CCodeExpressionStatement (cpropagate)); + // free local variables + var free_frag = new CCodeFragment (); + append_local_free (current_symbol, free_frag, false); + cerror_block.add_statement (free_frag); + if (current_return_type is VoidType) { cerror_block.add_statement (new CCodeReturnStatement ()); } else { -- 2.7.4