From 458d8bf76031a95b1f46cabee185aabf1153963c Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Wed, 14 Feb 2018 15:55:31 -0600 Subject: [PATCH] Don't dispose replaced visual nodes if they're replaced with themselves. --- src/Avalonia.Visuals/Rendering/SceneGraph/VisualNode.cs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/Avalonia.Visuals/Rendering/SceneGraph/VisualNode.cs b/src/Avalonia.Visuals/Rendering/SceneGraph/VisualNode.cs index 3cb7e53d21..427f819200 100644 --- a/src/Avalonia.Visuals/Rendering/SceneGraph/VisualNode.cs +++ b/src/Avalonia.Visuals/Rendering/SceneGraph/VisualNode.cs @@ -148,7 +148,10 @@ namespace Avalonia.Rendering.SceneGraph EnsureChildrenCreated(); var old = _children[index]; _children[index] = node; - old.Dispose(); + if (node != old) + { + old.Dispose(); + } } /// @@ -329,7 +332,7 @@ namespace Avalonia.Rendering.SceneGraph _drawOperationsCloned = false; } } - + public void Dispose() { foreach (var child in Children)