Fix possible cross-threading errors with MessageBoxBase

This commit is contained in:
MBucari
2025-07-16 22:57:25 -06:00
parent 4b7939541a
commit 7e79e98771
3 changed files with 36 additions and 7 deletions

View File

@@ -399,7 +399,15 @@ public abstract class ProcessBookViewModelBase : ReactiveObject
const MessageBoxButtons SkipDialogButtons = MessageBoxButtons.AbortRetryIgnore;
const MessageBoxDefaultButton SkipDialogDefaultButton = MessageBoxDefaultButton.Button1;
return await MessageBoxBase.Show(skipDialogText, "Skip this book?", SkipDialogButtons, MessageBoxIcon.Question, SkipDialogDefaultButton);
try
{
return await MessageBoxBase.Show(skipDialogText, "Skip this book?", SkipDialogButtons, MessageBoxIcon.Question, SkipDialogDefaultButton);
}
catch (Exception ex)
{
Serilog.Log.Logger.Error(ex, "Error showing retry dialog. Defaulting to 'Retry'; action.");
return DialogResult.Retry;
}
}
#endregion