diff --git a/src/modules/powerdisplay/PowerDisplay/Helpers/SettingsManager.cs b/src/modules/powerdisplay/PowerDisplay/Helpers/SettingsManager.cs
index bbccb1bd58..5b7fc8d615 100644
--- a/src/modules/powerdisplay/PowerDisplay/Helpers/SettingsManager.cs
+++ b/src/modules/powerdisplay/PowerDisplay/Helpers/SettingsManager.cs
@@ -252,11 +252,6 @@ namespace PowerDisplay.Helpers
// Release save permission even on error
Interlocked.Exchange(ref _isSaving, 0);
}
- catch
- {
- // Ensure we never crash on save
- Interlocked.Exchange(ref _isSaving, 0);
- }
await Task.CompletedTask; // Suppress async warning
}
diff --git a/src/modules/powerdisplay/PowerDisplay/PowerDisplay.csproj b/src/modules/powerdisplay/PowerDisplay/PowerDisplay.csproj
index 46e1d59f8f..c693c8c55c 100644
--- a/src/modules/powerdisplay/PowerDisplay/PowerDisplay.csproj
+++ b/src/modules/powerdisplay/PowerDisplay/PowerDisplay.csproj
@@ -21,10 +21,6 @@
PowerToys.PowerDisplay.pri
true
enable
-
- true
- false
- false
diff --git a/src/modules/powerdisplay/PowerDisplay/ViewModels/MainViewModel.cs b/src/modules/powerdisplay/PowerDisplay/ViewModels/MainViewModel.cs
index fa81be54c5..03eed2bb2b 100644
--- a/src/modules/powerdisplay/PowerDisplay/ViewModels/MainViewModel.cs
+++ b/src/modules/powerdisplay/PowerDisplay/ViewModels/MainViewModel.cs
@@ -692,10 +692,13 @@ public class MainViewModel : INotifyPropertyChanged, IDisposable
try
{
// Use Task.Run to avoid deadlock and wait with timeout
- var flushTask = Task.Run(async () => await _settingsManager?.FlushAsync());
- if (!flushTask.Wait(TimeSpan.FromSeconds(2)))
+ if (_settingsManager != null)
{
- Logger.LogWarning("Settings flush timed out during dispose");
+ var flushTask = Task.Run(async () => await _settingsManager.FlushAsync());
+ if (!flushTask.Wait(TimeSpan.FromSeconds(2)))
+ {
+ Logger.LogWarning("Settings flush timed out during dispose");
+ }
}
}
catch (Exception ex)