From f742fe55d5bef79145f55d47db0b85420a139cd1 Mon Sep 17 00:00:00 2001 From: YoshiRulz Date: Tue, 16 Jul 2024 04:09:01 +1000 Subject: [PATCH] Refactor `ToolManager.Close` that ought to cover everything --- src/BizHawk.Client.EmuHawk/tools/ToolManager.cs | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/BizHawk.Client.EmuHawk/tools/ToolManager.cs b/src/BizHawk.Client.EmuHawk/tools/ToolManager.cs index ab457d6546..d819a54fb1 100644 --- a/src/BizHawk.Client.EmuHawk/tools/ToolManager.cs +++ b/src/BizHawk.Client.EmuHawk/tools/ToolManager.cs @@ -662,8 +662,19 @@ namespace BizHawk.Client.EmuHawk public void Close() { - _tools.ForEach(t => t.Close()); + var toolsCopy = _tools.ToArray(); _tools.Clear(); + foreach (var t in toolsCopy) + { + try + { + t.Close(); + } + catch (Exception e) + { + Console.WriteLine($"caught while calling Form.Close on tool: {e}"); + } + } } ///