registry: extra check when moving a registry

This commit is contained in:
Michele Caini
2022-11-13 12:36:19 +01:00
parent 3925fc6124
commit f3e7f98b48

View File

@@ -398,6 +398,8 @@ public:
epool{std::move(other.epool)},
pools{std::move(other.pools)},
groups{std::move(other.groups)} {
ENTT_ASSERT(alloc_traits::is_always_equal::value || epool.get_allocator() == other.epool.get_allocator(), "Copying a registry is not allowed");
rebind();
}
@@ -407,6 +409,8 @@ public:
* @return This registry.
*/
basic_registry &operator=(basic_registry &&other) noexcept {
ENTT_ASSERT(alloc_traits::is_always_equal::value || epool.get_allocator() == other.epool.get_allocator(), "Copying a registry is not allowed");
vars = std::move(other.vars);
free_list = std::move(other.free_list);
epool = std::move(other.epool);