diff --git a/src/factory/FieldCreateFactory.cpp b/src/factory/FieldCreateFactory.cpp index 14e34f6..9637411 100644 --- a/src/factory/FieldCreateFactory.cpp +++ b/src/factory/FieldCreateFactory.cpp @@ -58,9 +58,8 @@ struct FieldCreate::Helper { std::pair itp(create->cache.equal_range(hash)); for(; itp.first!=itp.second; ++itp.first) { - Field* cent(itp.first->second); - FLD* centx(dynamic_cast(cent)); - if(centx && compare(*centx, *ent)) { + Field* const cent(itp.first->second); + if(compare(*cent, *ent)) { try{ ent = std::tr1::static_pointer_cast(cent->shared_from_this()); return;