From 8099dde34bc793f56aee6f59e3eb1485cf4fbcd2 Mon Sep 17 00:00:00 2001 From: Michele Caini Date: Wed, 21 Jul 2021 10:39:43 +0200 Subject: [PATCH] view: relax policy constraint if possible --- src/entt/entity/view.hpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/entt/entity/view.hpp b/src/entt/entity/view.hpp index 3de091222..0988cd318 100644 --- a/src/entt/entity/view.hpp +++ b/src/entt/entity/view.hpp @@ -371,7 +371,8 @@ class basic_view_impl, Component...> { template void traverse(Func func) const { for(const auto curr: internal::iterable_storage{*std::get *>(pools)}) { - if(Policy::accept(std::get<0>(curr)) && ((std::is_same_v || std::get *>(pools)->contains(std::get<0>(curr))) && ...) + if(internal::stable_iteration>>::accept(std::get<0>(curr)) + && ((std::is_same_v || std::get *>(pools)->contains(std::get<0>(curr))) && ...) && std::apply([entt = std::get<0>(curr)](const auto *... cpool) { return (!cpool->contains(entt) && ...); }, filter)) { if constexpr(is_applicable_v{}, std::declval().get({})))>) {