From: Luca Bruno Date: Thu, 5 Jan 2012 12:47:43 +0000 (+0100) Subject: Preserve the cast when unboxing gvariant X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e1712f602a46926fea5aa92c80d2323c38105d84;p=thirdparty%2Fvala.git Preserve the cast when unboxing gvariant --- diff --git a/codegen/valagvarianttransformer.vala b/codegen/valagvarianttransformer.vala index f1f2cff13..500cff25c 100644 --- a/codegen/valagvarianttransformer.vala +++ b/codegen/valagvarianttransformer.vala @@ -502,8 +502,6 @@ public class Vala.GVariantTransformer : CodeTransformer { } push_builder (new CodeBuilder (context, expr.parent_statement, expr.source_reference)); - var old_parent_node = expr.parent_node; - var target_type = expr.target_type.copy (); var type = expr.value_type; BasicTypeInfo basic_type; @@ -526,12 +524,12 @@ public class Vala.GVariantTransformer : CodeTransformer { } } - result.target_type = target_type; - context.analyzer.replaced_nodes.add (expr); - old_parent_node.replace_expression (expr, result); + context.analyzer.replaced_nodes.add (expr.inner); + expr.inner = result; b.check (this); pop_builder (); - check (result); + expr.checked = false; + check (expr); } public override void visit_expression (Expression expr) {