vala r2197 - in trunk: . gobject



Author: juergbi
Date: Tue Dec 16 23:38:56 2008
New Revision: 2197
URL: http://svn.gnome.org/viewvc/vala?rev=2197&view=rev

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

	* gobject/valaccodearraymodule.vala:

	Fix private array fields in structs, fixes bug 557174


Modified:
   trunk/ChangeLog
   trunk/gobject/valaccodearraymodule.vala

Modified: trunk/gobject/valaccodearraymodule.vala
==============================================================================
--- trunk/gobject/valaccodearraymodule.vala	(original)
+++ trunk/gobject/valaccodearraymodule.vala	Tue Dec 16 23:38:56 2008
@@ -172,16 +172,14 @@
 					CCodeExpression length_expr = null;
 
 					if (field.binding == MemberBinding.INSTANCE) {
-						TypeSymbol base_type = null;
-						if (ma.inner.value_type != null) {
-							base_type = ma.inner.value_type.data_type;
-						}
+						var cl = field.parent_symbol as Class;
+						bool is_gtypeinstance = (cl != null && !cl.is_compact);
 
 						var length_cname = get_array_length_cname (field.name, dim);
 						CCodeExpression typed_inst = (CCodeExpression) get_ccodenode (ma.inner);
 
 						CCodeExpression inst;
-						if (field.access == SymbolAccessibility.PRIVATE) {
+						if (is_gtypeinstance && field.access == SymbolAccessibility.PRIVATE) {
 							inst = new CCodeMemberAccess.pointer (typed_inst, "priv");
 						} else {
 							inst = typed_inst;



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