diff options
author | Jürg Billeter <j@bitron.ch> | 2010-01-10 15:06:23 +0100 |
---|---|---|
committer | Jürg Billeter <j@bitron.ch> | 2010-01-10 15:13:53 +0100 |
commit | 3a8fa50dbd7235f193b072ec8736bf5abfe902a6 (patch) | |
tree | 8f3ffe77dbe1f6d8ade3f30fd672871fa3d4f634 /vala/valaarraycreationexpression.vala | |
parent | 5f8c7a7aec996402c50c6a9ef3f483b1db262ed1 (diff) | |
download | vala-3a8fa50dbd7235f193b072ec8736bf5abfe902a6.tar.gz |
Fix crash on array creation expressions throwing errors
Fixes bug 606503.
Diffstat (limited to 'vala/valaarraycreationexpression.vala')
-rw-r--r-- | vala/valaarraycreationexpression.vala | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/vala/valaarraycreationexpression.vala b/vala/valaarraycreationexpression.vala index 34fbd4e7a..c2cb9af9a 100644 --- a/vala/valaarraycreationexpression.vala +++ b/vala/valaarraycreationexpression.vala @@ -1,6 +1,6 @@ /* valaarraycreationexpression.vala * - * Copyright (C) 2006-2009 Jürg Billeter + * Copyright (C) 2006-2010 Jürg Billeter * Copyright (C) 2006-2008 Raffaele Sandrini * * This library is free software; you can redistribute it and/or @@ -70,6 +70,9 @@ public class Vala.ArrayCreationExpression : Expression { */ public void append_size (Expression size) { sizes.add (size); + if (size != null) { + size.parent_node = this; + } } /** @@ -110,6 +113,15 @@ public class Vala.ArrayCreationExpression : Expression { return false; } + public override void replace_expression (Expression old_node, Expression new_node) { + for (int i = 0; i < sizes.size; i++) { + if (sizes[i] == old_node) { + sizes[i] = new_node; + return; + } + } + } + public override void replace_type (DataType old_type, DataType new_type) { if (element_type == old_type) { element_type = new_type; |