diff --git a/AetherBags/Addons/AddonConfigurationWindow.cs b/AetherBags/Addons/AddonConfigurationWindow.cs index bf95edd..678ae0b 100644 --- a/AetherBags/Addons/AddonConfigurationWindow.cs +++ b/AetherBags/Addons/AddonConfigurationWindow.cs @@ -10,11 +10,11 @@ namespace AetherBags.Addons; public class AddonConfigurationWindow : NativeAddon { - private TabBarNode _tabBarNode = null!; + private TabBarNode? _tabBarNode; - private GeneralScrollingAreaNode _generalScrollingAreaNode = null!; - private CategoryScrollingAreaNode _categoryScrollingAreaNode = null!; - private CurrencyScrollingAreaNode _currencyScrollingAreaNode = null!; + private GeneralScrollingAreaNode? _generalScrollingAreaNode; + private CategoryScrollingAreaNode? _categoryScrollingAreaNode; + private CurrencyScrollingAreaNode? _currencyScrollingAreaNode; private readonly List _tabContent = new(); @@ -73,4 +73,17 @@ public class AddonConfigurationWindow : NativeAddon for (var i = 0; i < _tabContent.Count; i++) _tabContent[i].IsVisible = i == index; } + + protected override unsafe void OnFinalize(AtkUnitBase* addon) + { + _tabBarNode?.Dispose(); + _tabBarNode = null; + _generalScrollingAreaNode?.Dispose(); + _generalScrollingAreaNode = null; + _categoryScrollingAreaNode?.Dispose(); + _categoryScrollingAreaNode = null; + _currencyScrollingAreaNode?.Dispose(); + _currencyScrollingAreaNode = null; + base.OnFinalize(addon); + } } \ No newline at end of file diff --git a/KamiToolKit b/KamiToolKit index 30789be..e8ad28b 160000 --- a/KamiToolKit +++ b/KamiToolKit @@ -1 +1 @@ -Subproject commit 30789be03b5926ac065677cda72055a12da9926c +Subproject commit e8ad28b6a2c5ece7c204f39cea3309a4906e1051