vala r2329 - in trunk: . vala
- From: juergbi svn gnome org
- To: svn-commits-list gnome org
- Subject: vala r2329 - in trunk: . vala
- Date: Sun, 11 Jan 2009 00:55:08 +0000 (UTC)
Author: juergbi
Date: Sun Jan 11 00:55:08 2009
New Revision: 2329
URL: http://svn.gnome.org/viewvc/vala?rev=2329&view=rev
Log:
2009-01-11 JÃrg Billeter <j bitron ch>
* vala/valamemberaccess.vala:
* vala/valasemanticanalyzer.vala:
Fix crash when assigning to dynamic properties
Modified:
trunk/ChangeLog
trunk/vala/valamemberaccess.vala
trunk/vala/valasemanticanalyzer.vala
Modified: trunk/vala/valamemberaccess.vala
==============================================================================
--- trunk/vala/valamemberaccess.vala (original)
+++ trunk/vala/valamemberaccess.vala Sun Jan 11 00:55:08 2009
@@ -1,6 +1,6 @@
/* valamemberaccess.vala
*
- * Copyright (C) 2006-2008 JÃrg Billeter
+ * Copyright (C) 2006-2009 JÃrg Billeter
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@@ -350,7 +350,7 @@
// dynamic property assignment
var prop = new DynamicProperty (inner.value_type, member_name, source_reference);
prop.access = SymbolAccessibility.PUBLIC;
- prop.set_accessor = new PropertyAccessor (false, true, false, prop.property_type.copy (), null, prop.source_reference);
+ prop.set_accessor = new PropertyAccessor (false, true, false, null, null, prop.source_reference);
prop.set_accessor.access = SymbolAccessibility.PUBLIC;
prop.owner = inner.value_type.data_type.scope;
dynamic_object_type.type_symbol.scope.add (null, prop);
Modified: trunk/vala/valasemanticanalyzer.vala
==============================================================================
--- trunk/vala/valasemanticanalyzer.vala (original)
+++ trunk/vala/valasemanticanalyzer.vala Sun Jan 11 00:55:08 2009
@@ -163,11 +163,11 @@
} else if (sym is Property) {
var prop = (Property) sym;
if (lvalue) {
- if (prop.set_accessor != null) {
+ if (prop.set_accessor != null && prop.set_accessor.value_type != null) {
return prop.set_accessor.value_type.copy ();
}
} else {
- if (prop.get_accessor != null) {
+ if (prop.get_accessor != null && prop.get_accessor.value_type != null) {
return prop.get_accessor.value_type.copy ();
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]