]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
codegen: Reduce get_delegate_target/get_delegate_target_destroy_notify calls
authorJeremy Philippe <jeremy.philippe@gmail.com>
Wed, 7 Oct 2020 11:41:40 +0000 (13:41 +0200)
committerRico Tzschichholz <ricotz@ubuntu.com>
Wed, 7 Oct 2020 11:41:40 +0000 (13:41 +0200)
codegen/valaccodebasemodule.vala

index dfbae93b455a8cd6617f914d0aa3e0b6436652ee..b11992e175370a056245b0e2bce313dd9d1457dd 100644 (file)
@@ -5389,13 +5389,15 @@ public abstract class Vala.CCodeBaseModule : CodeGenerator {
                set_cvalue (expr, new CCodeCastExpression (innercexpr, get_ccode_name (expr.type_reference)));
 
                if (expr.type_reference is DelegateType) {
-                       if (get_delegate_target (expr.inner) != null) {
-                               set_delegate_target (expr, get_delegate_target (expr.inner));
+                       var target = get_delegate_target (expr.inner);
+                       if (target != null) {
+                               set_delegate_target (expr, target);
                        } else {
                                set_delegate_target (expr, new CCodeConstant ("NULL"));
                        }
-                       if (get_delegate_target_destroy_notify (expr.inner) != null) {
-                               set_delegate_target_destroy_notify (expr, get_delegate_target_destroy_notify (expr.inner));
+                       var target_destroy_notify = get_delegate_target_destroy_notify (expr.inner);
+                       if (target_destroy_notify != null) {
+                               set_delegate_target_destroy_notify (expr, target_destroy_notify);
                        } else {
                                set_delegate_target_destroy_notify (expr, new CCodeConstant ("NULL"));
                        }