From c887f88f536ff75b99e1509f570ea2289fce09a4 Mon Sep 17 00:00:00 2001 From: vng Date: Thu, 28 Jan 2016 18:38:13 +0300 Subject: [PATCH] [search] Limit building iterations count when getting address for point. --- search/reverse_geocoder.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/search/reverse_geocoder.cpp b/search/reverse_geocoder.cpp index 1076667e6a..cd31ef4dbf 100644 --- a/search/reverse_geocoder.cpp +++ b/search/reverse_geocoder.cpp @@ -110,6 +110,7 @@ void ReverseGeocoder::GetNearbyAddress(m2::PointD const & center, Address & addr unique_ptr table; MwmSet::MwmHandle mwmHandle; + int triesCount = 0; for (auto const & b : buildings) { if (!table || mwmHandle.GetId() != b.m_id.m_mwmId) @@ -129,6 +130,10 @@ void ReverseGeocoder::GetNearbyAddress(m2::PointD const & center, Address & addr addr.m_street = streets[ind]; return; } + + // Do not analyze more than 5 houses to get exact address. + if (++triesCount == 5) + return; } }