diff --git a/map/coverage_generator.cpp b/map/coverage_generator.cpp index 6e547c4a34..f35e837033 100644 --- a/map/coverage_generator.cpp +++ b/map/coverage_generator.cpp @@ -161,7 +161,10 @@ void CoverageGenerator::CoverScreen(ScreenBase const & screen, int sequenceID) m_workCoverage->SetScreen(screen); if (!m_workCoverage->IsPartialCoverage() && m_workCoverage->IsEmptyDrawingCoverage()) + { + m_workCoverage->ResetEmptyModelAtCoverageCenter(); AddCheckEmptyModelTask(sequenceID); + } m_workCoverage->Cache(); @@ -197,7 +200,10 @@ void CoverageGenerator::MergeTile(Tiler::RectInfo const & rectInfo, int sequence m_workCoverage->Merge(rectInfo); if (!m_workCoverage->IsPartialCoverage() && m_workCoverage->IsEmptyDrawingCoverage()) + { + m_workCoverage->ResetEmptyModelAtCoverageCenter(); AddCheckEmptyModelTask(sequenceID); + } m_workCoverage->Cache(); diff --git a/map/screen_coverage.cpp b/map/screen_coverage.cpp index e376bc44ff..936308ec66 100644 --- a/map/screen_coverage.cpp +++ b/map/screen_coverage.cpp @@ -385,6 +385,11 @@ bool ScreenCoverage::IsEmptyModelAtCoverageCenter() const return m_isEmptyModelAtCoverageCenter; } +void ScreenCoverage::ResetEmptyModelAtCoverageCenter() +{ + m_isEmptyModelAtCoverageCenter = false; +} + string ScreenCoverage::GetCountryNameAtCoverageCenter() const { return m_countryNameAtCoverageCenter; diff --git a/map/screen_coverage.hpp b/map/screen_coverage.hpp index 28f465dd75..a379c3eeb6 100644 --- a/map/screen_coverage.hpp +++ b/map/screen_coverage.hpp @@ -103,6 +103,8 @@ public: bool IsEmptyDrawingCoverage() const; /// Is the model empty at the screen center bool IsEmptyModelAtCoverageCenter() const; + /// Reset IsEmptyModelAtCoverageCenter flag + void ResetEmptyModelAtCoverageCenter(); /// What country is at this coverage center. /// @warning check this flag only if IsEmptyModelAtCoverageCenter is true string GetCountryNameAtCoverageCenter() const;