diff --git a/src/entt/meta/factory.hpp b/src/entt/meta/factory.hpp index 88d04f60e..1732d25a8 100644 --- a/src/entt/meta/factory.hpp +++ b/src/entt/meta/factory.hpp @@ -96,12 +96,12 @@ class basic_meta_factory { curr = curr->next.get(); } - if(curr->invoke != node.invoke) { + if(curr->invoke == node.invoke) { + invoke = curr->invoke; + } else { invoke = node.invoke; curr->next = std::make_shared(); *curr->next = std::move(node); - } else { - invoke = curr->invoke; } bucket = id;