diff options
author | Dmitriy Klimenko <dklimenko@luxoft.com> | 2014-09-08 05:18:21 -0700 |
---|---|---|
committer | Dmitriy Klimenko <dklimenko@luxoft.com> | 2014-09-08 05:19:09 -0700 |
commit | 26b1796254bec702e970c7491cf127570fa04a6c (patch) | |
tree | 32c3a7c637d0161eda2dad0813d448b4921e66cc | |
parent | b61c387b548e1a6277cb79bb2404c519c68793e8 (diff) | |
download | sdl_core-26b1796254bec702e970c7491cf127570fa04a6c.tar.gz |
APPLINK-9086: SDL ignition off core if 100 choices were created fixSDL_RB_CW37
-rw-r--r-- | src/components/application_manager/src/application_manager_impl.cc | 23 |
1 files changed, 8 insertions, 15 deletions
diff --git a/src/components/application_manager/src/application_manager_impl.cc b/src/components/application_manager/src/application_manager_impl.cc index 8d6c0869bb..fd5fb9d852 100644 --- a/src/components/application_manager/src/application_manager_impl.cc +++ b/src/components/application_manager/src/application_manager_impl.cc @@ -1902,6 +1902,8 @@ void ApplicationManagerImpl::UnregisterApplication( LOG4CXX_INFO(logger_, "ApplicationManagerImpl::UnregisterApplication " << app_id); + sync_primitives::AutoLock lock(applications_list_lock_); + switch (reason) { case mobile_apis::Result::SUCCESS:break; case mobile_apis::Result::DISALLOWED: break; @@ -1919,23 +1921,14 @@ void ApplicationManagerImpl::UnregisterApplication( } ApplicationSharedPtr app_to_remove; - { - sync_primitives::AutoLock lock(applications_list_lock_); - - std::set<ApplicationSharedPtr>::const_iterator it = application_list_.begin(); - for (; it != application_list_.end(); ++it) { - if ((*it)->app_id() == app_id) { - app_to_remove = *it; - break; - } + std::set<ApplicationSharedPtr>::const_iterator it = application_list_.begin(); + for (; it != application_list_.end(); ++it) { + if ((*it)->app_id() == app_id) { + app_to_remove = *it; + break; } - application_list_.erase(app_to_remove); - } - - if (!app_to_remove) { - LOG4CXX_INFO(logger_, "Application is already unregistered."); - return; } + application_list_.erase(app_to_remove); if (is_resuming) { resume_ctrl_.SaveApplication(app_to_remove); |