diff options
-rw-r--r-- | src/components/application_manager/src/application_manager_impl.cc | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/components/application_manager/src/application_manager_impl.cc b/src/components/application_manager/src/application_manager_impl.cc index 00873e199c..bf5eeef65c 100644 --- a/src/components/application_manager/src/application_manager_impl.cc +++ b/src/components/application_manager/src/application_manager_impl.cc @@ -3316,6 +3316,11 @@ void ApplicationManagerImpl::UnregisterApplication( RemoveAppsWaitingForRegistration(handle); } } + + MessageHelper::SendOnAppUnregNotificationToHMI( + app_to_remove, is_unexpected_disconnect, *this); + commands_holder_->Clear(app_to_remove); + const auto enabled_local_apps = policy_handler_->GetEnabledLocalApps(); if (helpers::in_range(enabled_local_apps, app_to_remove->policy_app_id())) { LOG4CXX_DEBUG(logger_, @@ -3328,8 +3333,6 @@ void ApplicationManagerImpl::UnregisterApplication( SendUpdateAppList(); } - commands_holder_->Clear(app_to_remove); - if (EndAudioPassThru(app_id)) { // May be better to put this code in MessageHelper? StopAudioPassThru(app_id); @@ -3340,11 +3343,10 @@ void ApplicationManagerImpl::UnregisterApplication( plugin.OnApplicationEvent(plugin_manager::kApplicationUnregistered, app_to_remove); }; - plugin_manager_->ForEachPlugin(on_app_unregistered); - MessageHelper::SendOnAppUnregNotificationToHMI( - app_to_remove, is_unexpected_disconnect, *this); + plugin_manager_->ForEachPlugin(on_app_unregistered); request_ctrl_.terminateAppRequests(app_id); + if (applications_.empty()) { policy_handler_->StopRetrySequence(); } |