From: Juerg Billeter Date: Sun, 27 Jan 2008 16:21:47 +0000 (+0000) Subject: fix critical when using normal member access on pointers X-Git-Tag: VALA_0_1_7~175 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=28d2b4e8882b3a4139edb8a0084319f7faebc166;p=thirdparty%2Fvala.git fix critical when using normal member access on pointers 2008-01-27 Juerg Billeter * vala/valasemanticanalyzer.vala: fix critical when using normal member access on pointers svn path=/trunk/; revision=916 --- diff --git a/ChangeLog b/ChangeLog index 4843d2199..9c5188c61 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2008-01-27 Jürg Billeter + + * vala/valasemanticanalyzer.vala: fix critical when using normal member + access on pointers + 2008-01-27 Jürg Billeter * vapi/glib-2.0.vapi: fix GValue binding diff --git a/vala/valasemanticanalyzer.vala b/vala/valasemanticanalyzer.vala index 2ae3ed9f9..2e9e539f5 100644 --- a/vala/valasemanticanalyzer.vala +++ b/vala/valasemanticanalyzer.vala @@ -1403,11 +1403,9 @@ public class Vala.SemanticAnalyzer : CodeVisitor { if (expr.symbol_reference == null && expr.inner.static_type != null) { if (expr.pointer_member_access) { expr.symbol_reference = expr.inner.static_type.get_pointer_member (expr.member_name); - } else { + } else if (expr.inner.static_type.data_type != null) { base_symbol = expr.inner.static_type.data_type; - if (base_symbol != null) { - expr.symbol_reference = symbol_lookup_inherited (base_symbol, expr.member_name); - } + expr.symbol_reference = symbol_lookup_inherited (base_symbol, expr.member_name); } if (expr.symbol_reference != null) { // inner expression is variable, field, or parameter