Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorr.kuznetsov <r.kuznetsov@corp.mail.ru>2018-01-31 14:52:49 +0300
committerDaria Volvenkova <d.volvenkova@corp.mail.ru>2018-01-31 15:16:31 +0300
commitc118e3323490af1fc6f88c2db7007da8b52b19e9 (patch)
tree48c2ba5a8444f8838e7f9e356f5561016b319385
parentbd3fe96484c393910e2877e48946dcafc48a786c (diff)
Fixed infinite memory consumption on start in iOS 10.2ios-store-807android-gr-807release-806
-rwxr-xr-xdrape_frontend/frontend_renderer.cpp24
1 files changed, 15 insertions, 9 deletions
diff --git a/drape_frontend/frontend_renderer.cpp b/drape_frontend/frontend_renderer.cpp
index 0d9258b786..35749f3f0b 100755
--- a/drape_frontend/frontend_renderer.cpp
+++ b/drape_frontend/frontend_renderer.cpp
@@ -870,15 +870,21 @@ void FrontendRenderer::UpdateGLResources()
m_trafficRenderer->ClearGLDependentResources();
- // Request new tiles.
- ScreenBase screen = m_userEventStream.GetCurrentScreen();
- m_lastReadedModelView = screen;
- m_requestedTiles->Set(screen, m_isIsometry || screen.isPerspective(),
- m_forceUpdateScene, m_forceUpdateUserMarks,
- ResolveTileKeys(screen));
- m_commutator->PostMessage(ThreadsCommutator::ResourceUploadThread,
- make_unique_dp<UpdateReadManagerMessage>(),
- MessagePriority::UberHighSingleton);
+ // In some cases UpdateGLResources can be called before the rendering of
+ // the first frame. m_currentZoomLevel will be equal to -1, so ResolveTileKeys
+ // could not be called.
+ if (m_currentZoomLevel > 0)
+ {
+ // Request new tiles.
+ ScreenBase screen = m_userEventStream.GetCurrentScreen();
+ m_lastReadedModelView = screen;
+ m_requestedTiles->Set(screen, m_isIsometry || screen.isPerspective(),
+ m_forceUpdateScene, m_forceUpdateUserMarks,
+ ResolveTileKeys(screen));
+ m_commutator->PostMessage(ThreadsCommutator::ResourceUploadThread,
+ make_unique_dp<UpdateReadManagerMessage>(),
+ MessagePriority::UberHighSingleton);
+ }
m_gpsTrackRenderer->Update();
}