summaryrefslogtreecommitdiff
path: root/codegen/valaccodeassignmentmodule.vala
diff options
context:
space:
mode:
authorRico Tzschichholz <ricotz@ubuntu.com>2019-01-14 16:40:42 +0100
committerRico Tzschichholz <ricotz@ubuntu.com>2019-01-14 16:44:55 +0100
commit8054d88bef9916c9c95cb641e7d5a0b1baf108e0 (patch)
tree85a285cd07884acebfded153e62a44bf962e4b54 /codegen/valaccodeassignmentmodule.vala
parentb9e13e39d9ebef287ae511d8f6f320752c1c55d7 (diff)
downloadvala-8054d88bef9916c9c95cb641e7d5a0b1baf108e0.tar.gz
codegen: Rely on get_ccode_delegate_target() for delegate variables only
Diffstat (limited to 'codegen/valaccodeassignmentmodule.vala')
-rw-r--r--codegen/valaccodeassignmentmodule.vala2
1 files changed, 1 insertions, 1 deletions
diff --git a/codegen/valaccodeassignmentmodule.vala b/codegen/valaccodeassignmentmodule.vala
index ba5dd572a..96a47524e 100644
--- a/codegen/valaccodeassignmentmodule.vala
+++ b/codegen/valaccodeassignmentmodule.vala
@@ -212,7 +212,7 @@ public class Vala.CCodeAssignmentModule : CCodeMemberAccessModule {
if (lvalue.actual_value_type != null) {
type = lvalue.actual_value_type;
}
- if (get_ccode_delegate_target (field) && requires_destroy (type)) {
+ if ((!(field.variable_type is DelegateType) || get_ccode_delegate_target (field)) && requires_destroy (type)) {
/* unref old value */
ccode.add_expression (destroy_field (field, instance));
}