vala r1316 - in trunk: . gobject vala



Author: juergbi
Date: Sat Apr 26 07:39:28 2008
New Revision: 1316
URL: http://svn.gnome.org/viewvc/vala?rev=1316&view=rev

Log:
2008-04-26  Juerg Billeter  <j bitron ch>

	* vala/valacatchclause.vala:
	* gobject/valaccodegenerator.vala:

	Support catch clauses without error variable, fixes bug 529539


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

Modified: trunk/gobject/valaccodegenerator.vala
==============================================================================
--- trunk/gobject/valaccodegenerator.vala	(original)
+++ trunk/gobject/valaccodegenerator.vala	Sat Apr 26 07:39:28 2008
@@ -2297,8 +2297,13 @@
 
 		var cblock = new CCodeBlock ();
 
+		string variable_name = clause.variable_name;
+		if (variable_name == null) {
+			variable_name = "__err";
+		}
+
 		var cdecl = new CCodeDeclaration ("GError *");
-		cdecl.add_declarator (new CCodeVariableDeclarator.with_initializer (clause.variable_name, new CCodeIdentifier ("inner_error")));
+		cdecl.add_declarator (new CCodeVariableDeclarator.with_initializer (variable_name, new CCodeIdentifier ("inner_error")));
 		cblock.add_statement (cdecl);
 		cblock.add_statement (new CCodeExpressionStatement (new CCodeAssignment (new CCodeIdentifier ("inner_error"), new CCodeConstant ("NULL"))));
 

Modified: trunk/vala/valacatchclause.vala
==============================================================================
--- trunk/vala/valacatchclause.vala	(original)
+++ trunk/vala/valacatchclause.vala	Sat Apr 26 07:39:28 2008
@@ -42,7 +42,7 @@
 	/**
 	 * Specifies the error variable name.
 	 */
-	public string variable_name { get; set; }
+	public string? variable_name { get; set; }
 	
 	/**
 	 * Specifies the error handler body.
@@ -65,7 +65,7 @@
 	 * @param source_reference reference to source code
 	 * @return                 newly created catch clause
 	 */
-	public CatchClause (DataType? error_type, string variable_name, Block body, SourceReference? source_reference = null) {
+	public CatchClause (DataType? error_type, string? variable_name, Block body, SourceReference? source_reference = null) {
 		this.error_type = error_type;
 		this.variable_name = variable_name;
 		this.body = body;



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