1
0
Эх сурвалжийг харах

registry::prepare: strictier check

Michele Caini 6 жил өмнө
parent
commit
f498b8a049

+ 4 - 1
src/entt/entity/registry.hpp

@@ -332,7 +332,10 @@ public:
      */
     template<typename Component, typename... Args>
     void prepare(Args &&... args) {
-        ENTT_ASSERT(std::none_of(pools.cbegin(), pools.cend(), [ctype = to_integer(type<Component>())](auto &&pdata) {return pdata.runtime_type == ctype; }));
+        ENTT_ASSERT(std::none_of(pools.cbegin(), pools.cend(), [ctype = to_integer(type<Component>())](auto &&pdata) {
+            return pdata.pool && pdata.runtime_type == ctype;
+        }));
+
         [[maybe_unused]] auto *cpool = assure<Component>(std::forward<Args>(args)...);
         ENTT_ASSERT(cpool->size() == 0);
     }