From 399417692feb18dc163d5924dc535de9a33f7c4e Mon Sep 17 00:00:00 2001 From: Steven Kirk Date: Thu, 23 Jan 2020 10:11:14 +0100 Subject: [PATCH] Revert "Removed unused owner reference." This reverts commit d0e2a844db6dd3b4c101b3ebda4249c429d19c0d. --- src/Avalonia.Base/PropertyStore/BindingEntry.cs | 3 +++ src/Avalonia.Base/PropertyStore/PriorityValue.cs | 2 +- src/Avalonia.Base/ValueStore.cs | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/Avalonia.Base/PropertyStore/BindingEntry.cs b/src/Avalonia.Base/PropertyStore/BindingEntry.cs index 637272ad6a..09a0f169df 100644 --- a/src/Avalonia.Base/PropertyStore/BindingEntry.cs +++ b/src/Avalonia.Base/PropertyStore/BindingEntry.cs @@ -19,15 +19,18 @@ namespace Avalonia.PropertyStore /// The property type. internal class BindingEntry : IBindingEntry, IPriorityValueEntry, IObserver> { + private readonly IAvaloniaObject _owner; private IValueSink _sink; private IDisposable? _subscription; public BindingEntry( + IAvaloniaObject owner, StyledPropertyBase property, IObservable> source, BindingPriority priority, IValueSink sink) { + _owner = owner; Property = property; Source = source; Priority = priority; diff --git a/src/Avalonia.Base/PropertyStore/PriorityValue.cs b/src/Avalonia.Base/PropertyStore/PriorityValue.cs index d6139b2927..2785dc6840 100644 --- a/src/Avalonia.Base/PropertyStore/PriorityValue.cs +++ b/src/Avalonia.Base/PropertyStore/PriorityValue.cs @@ -95,7 +95,7 @@ namespace Avalonia.PropertyStore public BindingEntry AddBinding(IObservable> source, BindingPriority priority) { - var binding = new BindingEntry(Property, source, priority, this); + var binding = new BindingEntry(_owner, Property, source, priority, this); var insert = FindInsertPoint(binding.Priority); _entries.Insert(insert, binding); return binding; diff --git a/src/Avalonia.Base/ValueStore.cs b/src/Avalonia.Base/ValueStore.cs index af093c2b22..58ebc48652 100644 --- a/src/Avalonia.Base/ValueStore.cs +++ b/src/Avalonia.Base/ValueStore.cs @@ -121,7 +121,7 @@ namespace Avalonia } else { - var entry = new BindingEntry(property, source, priority, this); + var entry = new BindingEntry(_owner, property, source, priority, this); _values.AddValue(property, entry); entry.Start(); return entry;