From: Jürg Billeter Date: Sun, 11 Nov 2012 19:12:45 +0000 (+0100) Subject: codegen: Fix memory leak when chaining up in fundamental classes X-Git-Tag: 0.18.1~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8d7bd11b73378789112283ab5549e1bcae6dcea1;p=thirdparty%2Fvala.git codegen: Fix memory leak when chaining up in fundamental classes Fixes bug 684776. --- diff --git a/codegen/valaccodemethodmodule.vala b/codegen/valaccodemethodmodule.vala index d6b8cf421..f26ed71a9 100644 --- a/codegen/valaccodemethodmodule.vala +++ b/codegen/valaccodemethodmodule.vala @@ -606,7 +606,7 @@ public abstract class Vala.CCodeMethodModule : CCodeStructModule { var cl = (Class) m.parent_symbol; ccode.add_declaration (get_ccode_name (cl) + "*", new CCodeVariableDeclarator.zero ("self", new CCodeConstant ("NULL"))); - if (cl.is_fundamental ()) { + if (cl.is_fundamental () && !((CreationMethod) m).chain_up) { var ccall = new CCodeFunctionCall (new CCodeIdentifier ("g_type_create_instance")); ccall.add_argument (get_variable_cexpression ("object_type")); ccode.add_assignment (get_this_cexpression (), new CCodeCastExpression (ccall, get_ccode_name (cl) + "*"));