From 9bfee342651658fc3ce8b088939d7f78bb5649ab Mon Sep 17 00:00:00 2001 From: Dave Rayment Date: Mon, 16 Sep 2024 21:10:51 +0100 Subject: [PATCH] [Peek]Fix memory leak caused by unmanaged bitmaps not being freed (#34484) --- src/modules/peek/Peek.FilePreviewer/FilePreview.xaml.cs | 3 +++ .../peek/Peek.FilePreviewer/Peek.FilePreviewer.csproj | 6 ------ 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/src/modules/peek/Peek.FilePreviewer/FilePreview.xaml.cs b/src/modules/peek/Peek.FilePreviewer/FilePreview.xaml.cs index 79024b23dee..53d96e5eb6f 100644 --- a/src/modules/peek/Peek.FilePreviewer/FilePreview.xaml.cs +++ b/src/modules/peek/Peek.FilePreviewer/FilePreview.xaml.cs @@ -154,6 +154,9 @@ private async Task OnItemPropertyChanged() _cancellationTokenSource.Cancel(); _cancellationTokenSource = new(); + // Clear up any unmanaged resources before creating a new previewer instance. + (Previewer as IDisposable)?.Dispose(); + if (Item == null) { Previewer = null; diff --git a/src/modules/peek/Peek.FilePreviewer/Peek.FilePreviewer.csproj b/src/modules/peek/Peek.FilePreviewer/Peek.FilePreviewer.csproj index 5e740bc98db..83b75f8ed95 100644 --- a/src/modules/peek/Peek.FilePreviewer/Peek.FilePreviewer.csproj +++ b/src/modules/peek/Peek.FilePreviewer/Peek.FilePreviewer.csproj @@ -103,12 +103,6 @@ - - - MSBuild:Compile - - - MSBuild:Compile