vala r1593 - in trunk: . gobject vala



Author: juergbi
Date: Sun Jun 15 22:46:05 2008
New Revision: 1593
URL: http://svn.gnome.org/viewvc/vala?rev=1593&view=rev

Log:
2008-06-16  JÃrg Billeter  <j bitron ch>

	* vala/valasemanticanalyzer.vala:
	* gobject/valaccodegenerator.vala:

	Free error variable in catch clauses, fixes bug 538331


Modified:
   trunk/ChangeLog
   trunk/gobject/valaccodegenerator.vala
   trunk/vala/valasemanticanalyzer.vala

Modified: trunk/gobject/valaccodegenerator.vala
==============================================================================
--- trunk/gobject/valaccodegenerator.vala	(original)
+++ trunk/gobject/valaccodegenerator.vala	Sun Jun 15 22:46:05 2008
@@ -2477,6 +2477,10 @@
 	}
 
 	public override void visit_catch_clause (CatchClause clause) {
+		if (clause.error_variable != null) {
+			clause.error_variable.active = true;
+		}
+
 		current_method_inner_error = true;
 
 		clause.accept_children (this);

Modified: trunk/vala/valasemanticanalyzer.vala
==============================================================================
--- trunk/vala/valasemanticanalyzer.vala	(original)
+++ trunk/vala/valasemanticanalyzer.vala	Sun Jun 15 22:46:05 2008
@@ -1227,6 +1227,7 @@
 			clause.error_variable = new LocalVariable (clause.error_type.copy (), clause.variable_name);
 
 			clause.body.scope.add (clause.variable_name, clause.error_variable);
+			clause.body.add_local_variable (clause.error_variable);
 		} else {
 			clause.error_type = new ErrorType (null, clause.source_reference);
 		}



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]