From: Wolfgang (Blub) Bumiller Date: Sat, 18 Aug 2012 14:30:09 +0000 (+0200) Subject: ast_member will not unref/delete the owner: first of all the owner is always an ast_v... X-Git-Tag: 0.1-rc1~206 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=ffd41cb1c7c72cc2ea3b8660e6ee7ccc01e11244;p=xonotic%2Fgmqcc.git ast_member will not unref/delete the owner: first of all the owner is always an ast_value, which won't get deleted anyway, secondly: the ast_members are collected and deleted after the owners, so ast_unref(owner) will cause invalid memory access --- diff --git a/ast.c b/ast.c index cdefab6..317f0ef 100644 --- a/ast.c +++ b/ast.c @@ -405,7 +405,7 @@ ast_member* ast_member_new(lex_ctx ctx, ast_expression *owner, unsigned int fiel void ast_member_delete(ast_member *self) { - ast_unref(self->owner); + // ast_unref(self->owner); ast_expression_delete((ast_expression*)self); mem_d(self); }