From e47b8164957aceddaa09f62e7be7c3093aa2e471 Mon Sep 17 00:00:00 2001 From: Blair Date: Thu, 13 Mar 2025 08:26:37 +1000 Subject: [PATCH] Remove command from assembly map when removed from command map (#2183) --- Dalamud/Game/Command/CommandManager.cs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Dalamud/Game/Command/CommandManager.cs b/Dalamud/Game/Command/CommandManager.cs index 078ce8c50..fdaa5833b 100644 --- a/Dalamud/Game/Command/CommandManager.cs +++ b/Dalamud/Game/Command/CommandManager.cs @@ -10,6 +10,7 @@ using Dalamud.IoC.Internal; using Dalamud.Logging.Internal; using Dalamud.Plugin.Internal.Types; using Dalamud.Plugin.Services; +using Dalamud.Utility; using FFXIVClientStructs.FFXIV.Client.System.String; using FFXIVClientStructs.FFXIV.Client.UI; @@ -149,6 +150,11 @@ internal sealed unsafe class CommandManager : IInternalDisposableService, IComma /// public bool RemoveHandler(string command) { + if (this.commandAssemblyNameMap.FindFirst(c => c.Key.Item1 == command, out var assemblyKeyValuePair)) + { + this.commandAssemblyNameMap.TryRemove(assemblyKeyValuePair.Key, out _); + } + return this.commandMap.Remove(command, out _); }