diff --git a/src/OpenFOAM/fields/DimensionedFields/DimensionedField/MapDimensionedFields.H b/src/OpenFOAM/fields/DimensionedFields/DimensionedField/MapDimensionedFields.H index 6520eaec2fa98fffa427984a3df10657515667fd..b96c6ca666c0a783bf5d7997342b9501def880bc 100644 --- a/src/OpenFOAM/fields/DimensionedFields/DimensionedField/MapDimensionedFields.H +++ b/src/OpenFOAM/fields/DimensionedFields/DimensionedField/MapDimensionedFields.H @@ -45,10 +45,19 @@ void MapDimensionedFields(const MeshMapper& mapper) typedef DimensionedField<Type, GeoMesh> FieldType; typedef HashTable<const FieldType*> TableType; - TableType fields - ( - mapper.thisDb().objectRegistry::template lookupClass<FieldType>(true) - ); + TableType fields(mapper.thisDb().size()); + + forAllConstIter(objectRegistry, mapper.thisDb(), iter) + { + if (isType<FieldType>(*iter())) + { + fields.insert + ( + iter()->name(), + dynamic_cast<const FieldType*>(iter()) + ); + } + } forAllConstIter(typename TableType, fields, fieldIter) {