$instance->{$key} = $value;
weaken($instance->{$key})
- if $attribute->weak_ref;
+ if ref($instance->{$key}) && $attribute->is_weak_ref;
}
}
else {
$instance->{$key} = $args{$key};
weaken($instance->{$key})
- if $attribute->weak_ref;
+ if ref($instance->{$key}) && $attribute->is_weak_ref;
if ($attribute->has_trigger) {
$attribute->trigger->($instance, $args{$key}, $attribute);