From 2c3bc4d7e6e8b7c68f1a5800d8455ebcbd5cb4ee Mon Sep 17 00:00:00 2001 From: ClemensFischer Date: Fri, 5 Sep 2025 12:57:37 +0200 Subject: [PATCH] ImageLoader WPF, Avalonia --- MapControl/Avalonia/ImageLoader.Avalonia.cs | 5 ++++- MapControl/WPF/ImageLoader.WPF.cs | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/MapControl/Avalonia/ImageLoader.Avalonia.cs b/MapControl/Avalonia/ImageLoader.Avalonia.cs index 9986fc1b..647f6c81 100644 --- a/MapControl/Avalonia/ImageLoader.Avalonia.cs +++ b/MapControl/Avalonia/ImageLoader.Avalonia.cs @@ -4,6 +4,7 @@ using Avalonia.Media.Imaging; using Avalonia.Platform; using System; using System.IO; +using System.Threading; using System.Threading.Tasks; namespace MapControl @@ -22,7 +23,9 @@ namespace MapControl public static Task LoadImageAsync(Stream stream) { - return Task.Run(() => LoadImage(stream)); + return Thread.CurrentThread.IsThreadPoolThread ? + Task.FromResult(LoadImage(stream)) : + Task.Run(() => LoadImage(stream)); } public static async Task LoadImageAsync(string path) diff --git a/MapControl/WPF/ImageLoader.WPF.cs b/MapControl/WPF/ImageLoader.WPF.cs index 236ed9dd..233441e3 100644 --- a/MapControl/WPF/ImageLoader.WPF.cs +++ b/MapControl/WPF/ImageLoader.WPF.cs @@ -1,5 +1,6 @@ using System; using System.IO; +using System.Threading; using System.Threading.Tasks; using System.Windows; using System.Windows.Media; @@ -29,7 +30,9 @@ namespace MapControl public static Task LoadImageAsync(Stream stream) { - return Task.Run(() => LoadImage(stream)); + return Thread.CurrentThread.IsThreadPoolThread ? + Task.FromResult(LoadImage(stream)) : + Task.Run(() => LoadImage(stream)); } public static async Task LoadImageAsync(string path)