Synchronize map updates with traffic manager

Signed-off-by: mvglasow <michael -at- vonglasow.com>
This commit is contained in:
mvglasow
2025-08-28 21:10:42 +03:00
parent d46c0fec76
commit ef806cf18a
3 changed files with 60 additions and 48 deletions

View File

@@ -443,13 +443,13 @@ void Framework::OnCountryFileDownloaded(storage::CountryId const &,
m2::RectD rect = mercator::Bounds::FullRect();
if (localFile && localFile->OnDisk(MapFileType::Map))
{
auto const res = RegisterMap(*localFile);
MwmSet::MwmId const & id = res.first;
if (id.IsAlive())
rect = id.GetInfo()->m_bordersRect;
m_trafficManager.Invalidate(id);
}
m_trafficManager.RunSynchronized([this, localFile, &rect](){
auto const res = RegisterMap(*localFile);
MwmSet::MwmId const & id = res.first;
if (id.IsAlive())
rect = id.GetInfo()->m_bordersRect;
m_trafficManager.Invalidate(id);
});
m_transitManager.Invalidate();
m_isolinesManager.Invalidate();