diff --git a/DiscordChatExporter.Gui/ViewModels/Framework/DialogManager.cs b/DiscordChatExporter.Gui/ViewModels/Framework/DialogManager.cs index d6902d2..051c0f9 100644 --- a/DiscordChatExporter.Gui/ViewModels/Framework/DialogManager.cs +++ b/DiscordChatExporter.Gui/ViewModels/Framework/DialogManager.cs @@ -27,7 +27,15 @@ public class DialogManager : IDisposable { void OnScreenClosed(object? closeSender, EventArgs args) { - openArgs.Session.Close(); + try + { + openArgs.Session.Close(); + } + catch (InvalidOperationException) + { + // Race condition: dialog is already being closed + } + dialogScreen.Closed -= OnScreenClosed; } dialogScreen.Closed += OnScreenClosed;