Transform has SetIsHierarchyDispatchInterested present when destroying the hierarchy. Systems must deregister themselves in Deactivate.
UnityEngine.GameObject:AddComponent()
TransformHelper:CreateUIChild(Transform, String, Vector2) (at Assets/Utilities/Scripts/Helpers/TransformHelper.cs:75)
Megapop.Village.VillageEntityPanel:CreateVillageEntities() (at Assets/Scripts/Trolls2/Village/VillageEntityPanel.cs:103)
Megapop.Village.VillageEntityPanel:OnRulesChanged() (at Assets/Scripts/Trolls2/Village/VillageEntityPanel.cs:80)
Rules:AddRulesChangedListener(Action, Boolean) (at Assets/Scripts/Trolls2/Rules.cs:110)
Megapop.Village.VillageEntityPanel:InitializeService() (at Assets/Scripts/Trolls2/Village/VillageEntityPanel.cs:67)
c__Iterator0:MoveNext() (at Assets/Scripts/ServiceSingleton.cs:34)
UnityEngine.SetupCoroutine:InvokeMoveNext(IEnumerator, IntPtr)
This is the code causing the exception:
public static GameObject CreateUIChild(this Transform transform, string name, Vector2 position)
{
var go = CreateChild(transform, name, position, Vector3.one);
go.AddComponent();
return go;
}