summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrii Kalinich (GitHub) <AKalinich@luxoft.com>2021-10-13 15:46:18 -0400
committerGitHub <noreply@github.com>2021-10-13 15:46:18 -0400
commitb0ccb4809af33a1b8fd30c16bfa77ac738e860ea (patch)
tree0fa02c952c817ef8daa278f82bede81f3c263acb
parentbb738ffc106bbc231bd0ade9dde65fff32c8b5ba (diff)
downloadsdl_core-b0ccb4809af33a1b8fd30c16bfa77ac738e860ea.tar.gz
Fix VR.ChangeRegistration issue (#3794)
There was found a misprint for a VR interface in `ChangeRegistration` request. Because of that, there might be a situations when HMI responds to one part of request faster than another part was actually sent. All required ordering and checks were updated.
-rw-r--r--src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/mobile/change_registration_request.cc9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/mobile/change_registration_request.cc b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/mobile/change_registration_request.cc
index 47ff7cbea1..f7fc7d2284 100644
--- a/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/mobile/change_registration_request.cc
+++ b/src/components/application_manager/rpc_plugins/sdl_rpc_plugin/src/commands/mobile/change_registration_request.cc
@@ -230,21 +230,28 @@ void ChangeRegistrationRequest::Run() {
SendResponse(false, mobile_apis::Result::UNSUPPORTED_RESOURCE);
return;
}
+
if (HmiInterfaces::InterfaceState::STATE_NOT_AVAILABLE != vr_state) {
StartAwaitForInterface(HmiInterfaces::InterfaceID::HMI_INTERFACE_VR);
}
+
if (HmiInterfaces::InterfaceState::STATE_NOT_AVAILABLE != tts_state) {
StartAwaitForInterface(HmiInterfaces::InterfaceID::HMI_INTERFACE_TTS);
}
if (HmiInterfaces::InterfaceState::STATE_NOT_AVAILABLE != ui_state) {
+ StartAwaitForInterface(HmiInterfaces::InterfaceID::HMI_INTERFACE_UI);
+ }
+
+ if (IsInterfaceAwaited(HmiInterfaces::HMI_INTERFACE_UI)) {
SendUIRequest(app, msg_params, hmi_language);
}
if (IsInterfaceAwaited(HmiInterfaces::HMI_INTERFACE_TTS)) {
SendTTSRequest(app, msg_params);
}
- if (IsInterfaceAwaited(HmiInterfaces::HMI_INTERFACE_UI)) {
+
+ if (IsInterfaceAwaited(HmiInterfaces::HMI_INTERFACE_VR)) {
SendVRRequest(app, msg_params);
}
}