From: Jürg Billeter Date: Fri, 20 Aug 2010 07:46:29 +0000 (+0200) Subject: Call ref_sink also on result of Object.newv if necessary X-Git-Tag: 0.9.8~31 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=247b2afe1bd761dff07dd4236542efedc0e43e74;p=thirdparty%2Fvala.git Call ref_sink also on result of Object.newv if necessary --- diff --git a/codegen/valagobjectmodule.vala b/codegen/valagobjectmodule.vala index d295289ba..238411b29 100644 --- a/codegen/valagobjectmodule.vala +++ b/codegen/valagobjectmodule.vala @@ -782,7 +782,8 @@ public class Vala.GObjectModule : GTypeModule { public override void visit_method_call (MethodCall expr) { if (expr.call is MemberAccess) { var ma = expr.call as MemberAccess; - if (ma.inner != null && ma.inner.symbol_reference == gobject_type && ma.member_name == "new") { + if (ma.inner != null && ma.inner.symbol_reference == gobject_type && + (ma.member_name == "new" || ma.member_name == "newv")) { // Object.new (...) creation // runtime check to ref_sink the instance if it's a floating type base.visit_method_call (expr);