vala r2184 - in trunk: . gobject vala



Author: juergbi
Date: Tue Dec 16 19:43:47 2008
New Revision: 2184
URL: http://svn.gnome.org/viewvc/vala?rev=2184&view=rev

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

	* vala/valafield.vala:
	* gobject/valaccodebasemodule.vala:

	Fix crash and temporary variable declarations when using struct
	initialization methods in field initializer, fixes bug 559459


Modified:
   trunk/ChangeLog
   trunk/gobject/valaccodebasemodule.vala
   trunk/vala/valafield.vala

Modified: trunk/gobject/valaccodebasemodule.vala
==============================================================================
--- trunk/gobject/valaccodebasemodule.vala	(original)
+++ trunk/gobject/valaccodebasemodule.vala	Tue Dec 16 19:43:47 2008
@@ -893,6 +893,9 @@
 						instance_init_fragment.append (new CCodeExpressionStatement (new CCodeAssignment (array_len_lhs, (CCodeExpression) size.ccodenode)));
 					}
 				}
+
+				append_temp_decl (instance_init_fragment, temp_vars);
+				temp_vars.clear ();
 			}
 			
 			if (requires_destroy (f.field_type) && instance_finalize_fragment != null) {

Modified: trunk/vala/valafield.vala
==============================================================================
--- trunk/vala/valafield.vala	(original)
+++ trunk/vala/valafield.vala	Tue Dec 16 19:43:47 2008
@@ -173,6 +173,12 @@
 		lock_used = used;
 	}
 
+	public override void replace_expression (Expression old_node, Expression new_node) {
+		if (initializer == old_node) {
+			initializer = new_node;
+		}
+	}
+
 	public override void replace_type (DataType old_type, DataType new_type) {
 		if (field_type == old_type) {
 			field_type = new_type;



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