]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
codegen: Don't try to create a GClosure for null
authorEvan Nemerson <evan@coeus-group.com>
Sat, 16 Oct 2010 07:57:35 +0000 (09:57 +0200)
committerJürg Billeter <j@bitron.ch>
Sat, 16 Oct 2010 07:57:35 +0000 (09:57 +0200)
Fixes bug 631269.

codegen/valaccodemethodcallmodule.vala

index cceec701848e22ccf2d2712d0f00bd622570bf1e..2aeca597b030c42582090b3f2bf60f00dad23e16 100644 (file)
@@ -364,7 +364,7 @@ public class Vala.CCodeMethodCallModule : CCodeAssignmentModule {
                                                                        closure_new.add_argument (new CCodeCastExpression (cexpr, "GCallback"));
                                                                        closure_new.add_argument (delegate_target);
                                                                        closure_new.add_argument (delegate_target_destroy_notify);
-                                                                       cexpr = closure_new;
+                                                                       cexpr = new CCodeConditionalExpression (new CCodeBinaryExpression (CCodeBinaryOperator.EQUALITY, cexpr, new CCodeIdentifier ("NULL")), new CCodeIdentifier ("NULL"), closure_new);
                                                                } else {
                                                                        carg_map.set (get_param_pos (param.cdelegate_target_parameter_position), delegate_target);
                                                                        if (deleg_type.value_owned) {