Ignore race conditions when closing dialogs

pull/986/head
Tyrrrz 2 years ago
parent 7d458cd3fd
commit 4edcdf0955

@ -27,7 +27,15 @@ public class DialogManager : IDisposable
{ {
void OnScreenClosed(object? closeSender, EventArgs args) 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;
} }
dialogScreen.Closed += OnScreenClosed; dialogScreen.Closed += OnScreenClosed;

Loading…
Cancel
Save