diff options
author | vng <viktor.govako@gmail.com> | 2013-12-23 19:39:49 +0400 |
---|---|---|
committer | Alex Zolotarev <alex@maps.me> | 2015-09-23 02:09:18 +0300 |
commit | 2ed05b3b482e3d39fb6987f9550cc616ce89ae0c (patch) | |
tree | d7f2d5f64e424b0b950f5cc003d6f421856b9713 /indexer/feature_visibility.cpp | |
parent | ccc114b8df5e3a6405fe1e56146e730ccef9822c (diff) |
[generator] Fixed bug with point drawing types for area objects.
Diffstat (limited to 'indexer/feature_visibility.cpp')
-rw-r--r-- | indexer/feature_visibility.cpp | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/indexer/feature_visibility.cpp b/indexer/feature_visibility.cpp index 024947077f..f3dc91d1c0 100644 --- a/indexer/feature_visibility.cpp +++ b/indexer/feature_visibility.cpp @@ -288,8 +288,19 @@ namespace bool operator() (uint32_t t) { IsDrawableLikeChecker doCheck(m_type); - // return true if need to delete - return !m_c.ProcessObjects(t, doCheck); + if (m_c.ProcessObjects(t, doCheck)) + return false; + + // IsDrawableLikeChecker checks only unique area styles, + // so we need to take into account point styles too. + if (m_type == FEATURE_TYPE_AREA) + { + IsDrawableLikeChecker doCheck(FEATURE_TYPE_POINT); + if (m_c.ProcessObjects(t, doCheck)) + return false; + } + + return true; } }; } |