don't access nullptr addon when shutting down early

This commit is contained in:
goat 2024-12-26 17:05:10 +01:00
parent f98da094f4
commit f3d7c6f2ea

View file

@ -92,16 +92,22 @@ internal sealed unsafe class ContextMenu : IInternalDisposableService, IContextM
/// <inheritdoc/> /// <inheritdoc/>
void IInternalDisposableService.DisposeService() void IInternalDisposableService.DisposeService()
{ {
this.atkModuleVf22OpenAddonByAgentHook.Dispose();
this.addonContextMenuOnMenuSelectedHook.Dispose();
var manager = RaptureAtkUnitManager.Instance(); var manager = RaptureAtkUnitManager.Instance();
if (manager == null)
return;
var menu = manager->GetAddonByName("ContextMenu"); var menu = manager->GetAddonByName("ContextMenu");
var submenu = manager->GetAddonByName("AddonContextSub"); var submenu = manager->GetAddonByName("AddonContextSub");
if (menu == null || submenu == null)
return;
if (menu->IsVisible) if (menu->IsVisible)
menu->FireCallbackInt(-1); menu->FireCallbackInt(-1);
if (submenu->IsVisible) if (submenu->IsVisible)
submenu->FireCallbackInt(-1); submenu->FireCallbackInt(-1);
this.atkModuleVf22OpenAddonByAgentHook.Dispose();
this.addonContextMenuOnMenuSelectedHook.Dispose();
} }
/// <inheritdoc/> /// <inheritdoc/>