From 218587f9cb41f4e50b25b355464bfd34b2dc95cd Mon Sep 17 00:00:00 2001 From: Marius Ungureanu Date: Tue, 14 Feb 2023 17:23:58 +0200 Subject: [PATCH] Dispose the presenter before the view This should ensure that the presenter doesn't access anything from the view that would access deallocated memory. Xamarin.Mac's Dispose `release`s the native handle, which might cause the native memory to be deallocated --- VSMac-CodeCoverage/CodeCoverage.Pad.Native/PadView.cs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/VSMac-CodeCoverage/CodeCoverage.Pad.Native/PadView.cs b/VSMac-CodeCoverage/CodeCoverage.Pad.Native/PadView.cs index 5da3028..2dd5d1d 100644 --- a/VSMac-CodeCoverage/CodeCoverage.Pad.Native/PadView.cs +++ b/VSMac-CodeCoverage/CodeCoverage.Pad.Native/PadView.cs @@ -61,9 +61,12 @@ private static PadView GetPadViewFrom(NSArray array) protected override void Dispose(bool disposing) { + if (!disposing) + { + presenter.Dispose(); + } + base.Dispose(disposing); - if (!disposing) return; - presenter.Dispose(); } #endregion