diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/Instance.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/Instance.cpp index fb7ede42fe..750efa1e36 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/Instance.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/Instance.cpp @@ -237,7 +237,6 @@ namespace AzToolsFramework if (m_containerEntity) { - m_instanceEntityMapper->UnregisterEntity(m_containerEntity->GetId()); m_containerEntity.reset(aznew AZ::Entity()); RegisterEntity(m_containerEntity->GetId(), GenerateEntityAlias()); } @@ -265,6 +264,11 @@ namespace AzToolsFramework void Instance::ClearEntities() { + if (m_containerEntity) + { + m_instanceEntityMapper->UnregisterEntity(m_containerEntity->GetId()); + } + for (const auto&[entityAlias, entity] : m_entities) { if (entity) diff --git a/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/InstanceSerializer.cpp b/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/InstanceSerializer.cpp index a2b0f47f57..b5a354ee74 100644 --- a/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/InstanceSerializer.cpp +++ b/Code/Framework/AzToolsFramework/AzToolsFramework/Prefab/Instance/InstanceSerializer.cpp @@ -168,7 +168,6 @@ namespace AzToolsFramework if (instance->m_containerEntity) { - instance->m_instanceEntityMapper->UnregisterEntity(instance->m_containerEntity->GetId()); instance->m_containerEntity.reset(); }