summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksandr Kutsan <AKutsan@luxoft.com>2020-08-20 16:53:42 +0300
committerAndrii Kalinich <AKalinich@luxoft.com>2020-09-02 12:35:30 -0400
commitf35e573e7587b06472e9f396d249339e8fc05cc8 (patch)
tree5e0bea1adceaf4244790c8d16d70f96518ccc0e2
parenta4215f5a0532e5a858c47709de2d364b3bde3865 (diff)
downloadsdl_core-f35e573e7587b06472e9f396d249339e8fc05cc8.tar.gz
Filter RC subscriptions in vehicle data plugin
-rw-r--r--src/components/application_manager/rpc_plugins/vehicle_info_plugin/src/vehicle_info_app_extension.cc14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/components/application_manager/rpc_plugins/vehicle_info_plugin/src/vehicle_info_app_extension.cc b/src/components/application_manager/rpc_plugins/vehicle_info_plugin/src/vehicle_info_app_extension.cc
index f0f5229521..f6ed01b101 100644
--- a/src/components/application_manager/rpc_plugins/vehicle_info_plugin/src/vehicle_info_app_extension.cc
+++ b/src/components/application_manager/rpc_plugins/vehicle_info_plugin/src/vehicle_info_app_extension.cc
@@ -175,7 +175,19 @@ void VehicleInfoAppExtension::RevertResumption(
SDL_LOG_AUTO_TRACE();
unsubscribeFromVehicleInfo();
- plugin_.RevertResumption(app_, subscriptions.enumerate());
+
+ std::set<std::string> ivi_subscriptions_to_revert;
+ const auto ivi_subscriptions_keys = subscriptions.enumerate();
+ for (const auto& key : ivi_subscriptions_keys) {
+ // Only boolean keys in subscriptions list are true vehicle data
+ // subscriptions
+ if (smart_objects::SmartType::SmartType_Boolean ==
+ subscriptions.getElement(key).getType()) {
+ ivi_subscriptions_to_revert.insert(key);
+ }
+ }
+
+ plugin_.RevertResumption(app_, ivi_subscriptions_to_revert);
}
VehicleInfoAppExtension& VehicleInfoAppExtension::ExtractVIExtension(