diff options
author | Artem Nosach <ANosach@luxoft.com> | 2015-09-01 15:48:26 +0300 |
---|---|---|
committer | Artem Nosach <ANosach@luxoft.com> | 2015-10-05 11:39:08 +0300 |
commit | 8486beb31993be6783e596d7288c8554e1f772d4 (patch) | |
tree | 6fb91d3e1405e070f48e6d48be2329a941510e27 | |
parent | 815630fd46a2ebcfb0207c8f17828934589e782f (diff) | |
download | sdl_core-8486beb31993be6783e596d7288c8554e1f772d4.tar.gz |
Add auto lock to message observer setter
Related-issue: APPLINK-15781
-rw-r--r-- | src/components/hmi_message_handler/src/hmi_message_handler_impl.cc | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/src/components/hmi_message_handler/src/hmi_message_handler_impl.cc b/src/components/hmi_message_handler/src/hmi_message_handler_impl.cc index 1a19610790..d2e81e708f 100644 --- a/src/components/hmi_message_handler/src/hmi_message_handler_impl.cc +++ b/src/components/hmi_message_handler/src/hmi_message_handler_impl.cc @@ -49,13 +49,10 @@ HMIMessageHandlerImpl::HMIMessageHandlerImpl() } HMIMessageHandlerImpl::~HMIMessageHandlerImpl() { - LOG4CXX_INFO(logger_, "HMIMessageHandlerImpl::~HMIMessageHandlerImpl()"); - sync_primitives::AutoLock lock(observer_locker_); - observer_ = NULL; - if (!message_adapters_.empty()) { - LOG4CXX_WARN(logger_, "Not all HMIMessageAdapter have unsubscribed from" - " HMIMessageHandlerImpl"); - } + LOG4CXX_AUTO_TRACE(logger_); + messages_to_hmi_.Shutdown(); + messages_from_hmi_.Shutdown(); + set_message_observer(NULL); } void HMIMessageHandlerImpl::OnMessageReceived(MessageSharedPointer message) { @@ -74,7 +71,8 @@ void HMIMessageHandlerImpl::SendMessageToHMI(MessageSharedPointer message) { } void HMIMessageHandlerImpl::set_message_observer(HMIMessageObserver* observer) { - LOG4CXX_INFO(logger_, "HMIMessageHandlerImpl::SetMessageObserver()"); + LOG4CXX_AUTO_TRACE(logger_); + sync_primitives::AutoLock lock(observer_locker_); observer_ = observer; } @@ -88,7 +86,8 @@ void HMIMessageHandlerImpl::OnErrorSending(MessageSharedPointer message) { observer_->OnErrorSending(message); } -void HMIMessageHandlerImpl::AddHMIMessageAdapter(HMIMessageAdapter* adapter) { +void HMIMessageHandlerImpl::AddHMIMessageAdapter( + HMIMessageAdapter* adapter) { LOG4CXX_AUTO_TRACE(logger_); message_adapters_.insert(adapter); } |