summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJackLivio <jack@livio.io>2021-04-09 09:07:58 -0400
committerGitHub <noreply@github.com>2021-04-09 09:07:58 -0400
commit5f9cbdf561df64e4a3d6e74c17301cec0dc4eacf (patch)
treef636743e710d6f8b934e3d6fd77f39dc53324022
parentc163c2d5de1e6be1ffe449572c1d7002816b3352 (diff)
downloadsdl_core-release/7.1.0-RC1.tar.gz
Check waypoint subscription size in resumption (#3684)7.1.0-RC2release/7.1.0-RC1
* Check waypoint subscription size in resumption * Update modifiers
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/sdl_rpc_plugin.cc10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/sdl_rpc_plugin.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/sdl_rpc_plugin.cc
index 4756c8b9a2..c5bc79f09d 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/sdl_rpc_plugin.cc
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/sdl_rpc_plugin.cc
@@ -131,14 +131,20 @@ void SDLRPCPlugin::RevertResumption(application_manager::Application& app) {
pending_resumption_handler_->OnResumptionRevert();
if (application_manager_->IsAppSubscribedForWayPoints(app)) {
- application_manager_->UnsubscribeAppFromWayPoints(app.app_id());
- if (!application_manager_->IsAnyAppSubscribedForWayPoints()) {
+ const auto subscribed_apps =
+ application_manager_->GetAppsSubscribedForWayPoints();
+ const bool send_unsubscribe =
+ subscribed_apps.size() <= 1 &&
+ application_manager_->IsSubscribedToHMIWayPoints();
+ if (send_unsubscribe) {
SDL_LOG_DEBUG("Send UnsubscribeWayPoints");
auto request =
application_manager::MessageHelper::CreateUnsubscribeWayPointsRequest(
application_manager_->GetNextHMICorrelationID());
application_manager_->GetRPCService().ManageHMICommand(request);
}
+ application_manager_->UnsubscribeAppFromWayPoints(app.app_id(),
+ send_unsubscribe);
}
}