From 8946f4f80d17e848b16639c033470b9eff84f294 Mon Sep 17 00:00:00 2001 From: Dan Walmsley Date: Fri, 6 Nov 2020 17:51:10 +0000 Subject: [PATCH 1/2] prevent NRE when popup is open and main window closes. --- src/Avalonia.Native/WindowImplBase.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Avalonia.Native/WindowImplBase.cs b/src/Avalonia.Native/WindowImplBase.cs index 2cf1fe2963..41009232e4 100644 --- a/src/Avalonia.Native/WindowImplBase.cs +++ b/src/Avalonia.Native/WindowImplBase.cs @@ -155,6 +155,7 @@ namespace Avalonia.Native } finally { + _parent._native = null; n?.Dispose(); } From eecc91feaa59e8d2e27b37440ca0fa3e9d5debb4 Mon Sep 17 00:00:00 2001 From: Dan Walmsley Date: Sat, 7 Nov 2020 19:51:56 +0000 Subject: [PATCH 2/2] cleaner fix. --- src/Avalonia.Native/WindowImplBase.cs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Avalonia.Native/WindowImplBase.cs b/src/Avalonia.Native/WindowImplBase.cs index 41009232e4..20b6b8ecc5 100644 --- a/src/Avalonia.Native/WindowImplBase.cs +++ b/src/Avalonia.Native/WindowImplBase.cs @@ -155,11 +155,10 @@ namespace Avalonia.Native } finally { - _parent._native = null; + + _parent?.Dispose(); n?.Dispose(); } - - _parent._mouse.Dispose(); } void IAvnWindowBaseEvents.Activated() => _parent.Activated?.Invoke(); @@ -337,6 +336,7 @@ namespace Avalonia.Native _nativeControlHost = null; (Screen as ScreenImpl)?.Dispose(); + _mouse.Dispose(); }