diff --git a/drape_frontend/tile_info.cpp b/drape_frontend/tile_info.cpp index 2dafcd2d4b..b8f37570d3 100644 --- a/drape_frontend/tile_info.cpp +++ b/drape_frontend/tile_info.cpp @@ -53,21 +53,21 @@ void TileInfo::ReadFeatureIndex(MapDataProvider const & model) void TileInfo::DiscardFeatureInfo(FeatureID const & featureId, MemoryFeatureIndex & memIndex) { - CheckCanceled(); - MemoryFeatureIndex::Lock lock(memIndex); UNUSED_VALUE(lock); + CheckCanceled(); + m_featureInfo.erase(featureId); } bool TileInfo::SetFeatureOwner(FeatureID const & featureId, MemoryFeatureIndex & memIndex) { - CheckCanceled(); - MemoryFeatureIndex::Lock lock(memIndex); UNUSED_VALUE(lock); + CheckCanceled(); + if (!m_featureInfo[featureId]) { bool isOwner = memIndex.SetFeatureOwner(featureId);