]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
Run destructor code before member destruction in compact classes
authorYu Feng <rainwoodman@gmail.com>
Sun, 1 Nov 2009 04:47:51 +0000 (00:47 -0400)
committerJürg Billeter <j@bitron.ch>
Sat, 9 Jan 2010 15:32:57 +0000 (16:32 +0100)
Fixes bug 600285.

Signed-off-by: Yu Feng <rainwoodman@gmail.com>
codegen/valagtypemodule.vala

index ba9d11558ba41c58aff094abb59b5d26abbd4d1b..cd0d58e262ec61cc67354d6e86f0a7f824a1d57b 100644 (file)
@@ -631,12 +631,12 @@ internal class Vala.GTypeModule : GErrorModule {
 
                                var cblock = new CCodeBlock ();
 
-                               cblock.add_statement (instance_finalize_fragment);
-
                                if (cl.destructor != null) {
                                        cblock.add_statement (cl.destructor.ccodenode);
                                }
 
+                               cblock.add_statement (instance_finalize_fragment);
+
                                var ccall = new CCodeFunctionCall (new CCodeIdentifier ("g_slice_free"));
                                ccall.add_argument (new CCodeIdentifier (cl.get_cname ()));
                                ccall.add_argument (new CCodeIdentifier ("self"));