diff options
author | Daria Volvenkova <d.volvenkova@corp.mail.ru> | 2016-08-25 20:21:26 +0300 |
---|---|---|
committer | Daria Volvenkova <d.volvenkova@corp.mail.ru> | 2016-08-26 17:05:52 +0300 |
commit | 157062b5c5099bf2a6e149c73d3b6ba9d6505b5a (patch) | |
tree | d0ad0110cb143e5e6cabf921c2c623c41f8e1f23 /drape_frontend | |
parent | cf1ea4d512e65a5c5ab9f45c0be8e51765650428 (diff) |
Review fixes.
Diffstat (limited to 'drape_frontend')
-rw-r--r-- | drape_frontend/backend_renderer.cpp | 10 | ||||
-rw-r--r-- | drape_frontend/base_renderer.cpp | 2 | ||||
-rw-r--r-- | drape_frontend/base_renderer.hpp | 1 | ||||
-rw-r--r-- | drape_frontend/drape_engine.cpp | 2 | ||||
-rwxr-xr-x | drape_frontend/frontend_renderer.cpp | 6 | ||||
-rw-r--r-- | drape_frontend/map_shape.hpp | 1 | ||||
-rw-r--r-- | drape_frontend/message_acceptor.cpp | 2 | ||||
-rw-r--r-- | drape_frontend/message_queue.cpp | 11 | ||||
-rw-r--r-- | drape_frontend/message_queue.hpp | 2 |
9 files changed, 19 insertions, 18 deletions
diff --git a/drape_frontend/backend_renderer.cpp b/drape_frontend/backend_renderer.cpp index eba5ceb3bb..b26819750b 100644 --- a/drape_frontend/backend_renderer.cpp +++ b/drape_frontend/backend_renderer.cpp @@ -319,6 +319,7 @@ void BackendRenderer::ReleaseResources() m_readManager.reset(); m_batchersPool.reset(); m_routeBuilder.reset(); + m_overlays.clear(); m_texMng->Release(); m_contextFactory->getResourcesUploadContext()->doneCurrent(); @@ -326,7 +327,7 @@ void BackendRenderer::ReleaseResources() void BackendRenderer::OnContextCreate() { - LOG(LWARNING, ("On context create.")); + LOG(LINFO, ("On context create.")); m_contextFactory->waitForInitialization(); m_contextFactory->getResourcesUploadContext()->makeCurrent(); @@ -337,10 +338,11 @@ void BackendRenderer::OnContextCreate() void BackendRenderer::OnContextDestroy() { - LOG(LWARNING, ("On context destroy.")); + LOG(LINFO, ("On context destroy.")); m_readManager->InvalidateAll(); m_batchersPool.reset(); m_texMng->Release(); + m_overlays.clear(); m_contextFactory->getResourcesUploadContext()->doneCurrent(); } @@ -349,7 +351,7 @@ BackendRenderer::Routine::Routine(BackendRenderer & renderer) : m_renderer(rende void BackendRenderer::Routine::Do() { - LOG(LWARNING, ("Start routine.")); + LOG(LINFO, ("Start routine.")); m_renderer.OnContextCreate(); while (!IsCancelled()) @@ -378,8 +380,6 @@ void BackendRenderer::InitGLDependentResource() GetPlatform().GetFontNames(params.m_glyphMngParams.m_fonts); m_texMng->Init(params); - - //RecacheMapShapes(); } void BackendRenderer::RecacheMapShapes() diff --git a/drape_frontend/base_renderer.cpp b/drape_frontend/base_renderer.cpp index a3d2c0bd01..265d28ed96 100644 --- a/drape_frontend/base_renderer.cpp +++ b/drape_frontend/base_renderer.cpp @@ -42,7 +42,7 @@ void BaseRenderer::StopThread() void BaseRenderer::SetRenderingEnabled(ref_ptr<dp::OGLContextFactory> contextFactory) { - if (m_wasContextReset) + if (m_wasContextReset && contextFactory != nullptr) m_contextFactory = contextFactory; SetRenderingEnabled(true); } diff --git a/drape_frontend/base_renderer.hpp b/drape_frontend/base_renderer.hpp index b56a9c21a8..6171f4929a 100644 --- a/drape_frontend/base_renderer.hpp +++ b/drape_frontend/base_renderer.hpp @@ -71,7 +71,6 @@ private: atomic<bool> m_isEnabled; TCompletionHandler m_renderingEnablingCompletionHandler; bool m_wasNotified; - atomic<bool> m_wasContextReset; bool FilterGLContextDependentMessage(ref_ptr<Message> msg); diff --git a/drape_frontend/drape_engine.cpp b/drape_frontend/drape_engine.cpp index b0413f6359..e406525800 100644 --- a/drape_frontend/drape_engine.cpp +++ b/drape_frontend/drape_engine.cpp @@ -95,8 +95,6 @@ DrapeEngine::~DrapeEngine() void DrapeEngine::Update(int w, int h) { - LOG(LWARNING, (w, h)); - RecacheGui(false); RecacheMapShapes(); diff --git a/drape_frontend/frontend_renderer.cpp b/drape_frontend/frontend_renderer.cpp index 9754984a18..19e8b5db04 100755 --- a/drape_frontend/frontend_renderer.cpp +++ b/drape_frontend/frontend_renderer.cpp @@ -1470,7 +1470,7 @@ TTilesCollection FrontendRenderer::ResolveTileKeys(ScreenBase const & screen) void FrontendRenderer::OnContextDestroy() { - LOG(LWARNING, ("On context destroy.")); + LOG(LINFO, ("On context destroy.")); // Clear all graphics. for (RenderLayer & layer : m_layers) @@ -1501,7 +1501,7 @@ void FrontendRenderer::OnContextDestroy() void FrontendRenderer::OnContextCreate() { - LOG(LWARNING, ("On context create.")); + LOG(LINFO, ("On context create.")); m_contextFactory->waitForInitialization(); @@ -1546,7 +1546,7 @@ FrontendRenderer::Routine::Routine(FrontendRenderer & renderer) : m_renderer(ren void FrontendRenderer::Routine::Do() { - LOG(LWARNING, ("Start routine")); + LOG(LINFO, ("Start routine.")); gui::DrapeGui::Instance().ConnectOnCompassTappedHandler(bind(&FrontendRenderer::OnCompassTapped, &m_renderer)); m_renderer.m_myPositionController->SetListener(ref_ptr<MyPositionController::Listener>(&m_renderer)); diff --git a/drape_frontend/map_shape.hpp b/drape_frontend/map_shape.hpp index 49b1e8d9f5..cdde3a35f4 100644 --- a/drape_frontend/map_shape.hpp +++ b/drape_frontend/map_shape.hpp @@ -74,6 +74,7 @@ public: {} Type GetType() const override { return Message::MapShapeReaded; } + bool IsGLContextDependent() const override { return true; } TMapShapes const & GetShapes() { return m_shapes; } private: diff --git a/drape_frontend/message_acceptor.cpp b/drape_frontend/message_acceptor.cpp index db070f5790..4f05bcdb06 100644 --- a/drape_frontend/message_acceptor.cpp +++ b/drape_frontend/message_acceptor.cpp @@ -25,6 +25,8 @@ bool MessageAcceptor::ProcessSingleMessage(bool waitForMessage) void MessageAcceptor::EnableMessageFiltering(TFilterMessageFn needFilterMessageFn) { + ASSERT(needFilterMessageFn != nullptr, ()); + m_needFilterMessageFn = needFilterMessageFn; m_messageQueue.FilterMessages(needFilterMessageFn); } diff --git a/drape_frontend/message_queue.cpp b/drape_frontend/message_queue.cpp index ff7595c8c9..fce3e04e30 100644 --- a/drape_frontend/message_queue.cpp +++ b/drape_frontend/message_queue.cpp @@ -82,14 +82,15 @@ void MessageQueue::PushMessage(drape_ptr<Message> && message, MessagePriority pr void MessageQueue::FilterMessages(TFilterMessageFn needFilterMessageFn) { + ASSERT(needFilterMessageFn != nullptr, ()); + lock_guard<mutex> lock(m_mutex); - auto iter = m_messages.begin(); - while (iter != m_messages.end()) + for (auto it = m_messages.begin(); it != m_messages.end(); ) { - if (needFilterMessageFn(make_ref(iter->first))) - iter = m_messages.erase(iter); + if (needFilterMessageFn(make_ref(it->first))) + it = m_messages.erase(it); else - ++iter; + ++it; } } diff --git a/drape_frontend/message_queue.hpp b/drape_frontend/message_queue.hpp index 6caaa1f292..dc2147191b 100644 --- a/drape_frontend/message_queue.hpp +++ b/drape_frontend/message_queue.hpp @@ -27,7 +27,7 @@ public: void CancelWait(); void ClearQuery(); - using TFilterMessageFn = function<bool (ref_ptr<Message>)>; + using TFilterMessageFn = function<bool(ref_ptr<Message>)>; void FilterMessages(TFilterMessageFn needFilterMessageFn); #ifdef DEBUG_MESSAGE_QUEUE |