]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
codegen: Do not free captured parameters in return statements
authorLuca Bruno <lucabru@src.gnome.org>
Sun, 26 Jun 2011 17:30:05 +0000 (19:30 +0200)
committerLuca Bruno <lucabru@src.gnome.org>
Sun, 26 Jun 2011 17:31:04 +0000 (19:31 +0200)
Fixes bug 653391.

codegen/valaccodebasemodule.vala

index 9f4a13a0bf70f5e80d82dc3636bc6807f963575a..65010e107d2bcac3597b4a4a8de8a9a41bd2c783 100644 (file)
@@ -3136,7 +3136,7 @@ public abstract class Vala.CCodeBaseModule : CodeGenerator {
 
        private void append_param_free (Method m) {
                foreach (Parameter param in m.get_parameters ()) {
-                       if (!param.ellipsis && requires_destroy (param.variable_type) && param.direction == ParameterDirection.IN) {
+                       if (!param.captured && !param.ellipsis && requires_destroy (param.variable_type) && param.direction == ParameterDirection.IN) {
                                ccode.add_expression (destroy_parameter (param));
                        }
                }