Fixed EmulatedUserHal so it supports SwitchUserMessageType::VEHICLE_REQUEST am: 5d40b783d1 am: 645bd8a6fa am: d4918ea194

Original change: https://android-review.googlesource.com/c/platform/hardware/interfaces/+/1425311

Change-Id: I48a33bd0033c9d3c133fcdcbc026f53a957e94ac
This commit is contained in:
felipeal 2020-09-15 04:32:04 +00:00 committed by Automerger Merge Worker
commit 4b5417906b

View file

@ -155,6 +155,15 @@ android::base::Result<std::unique_ptr<VehiclePropValue>> EmulatedUserHal::onSetS
} }
if (value.areaId != 0) { if (value.areaId != 0) {
if (value.value.int32Values.size() >= 2 &&
static_cast<SwitchUserMessageType>(value.value.int32Values[1]) ==
SwitchUserMessageType::VEHICLE_REQUEST) {
// User HAL can also request a user switch, so we need to check it first
ALOGD("set(SWITCH_USER) called from lshal to emulate a vehicle request: %s",
toString(value).c_str());
return std::unique_ptr<VehiclePropValue>(new VehiclePropValue(value));
}
// Otherwise, we store it
ALOGD("set(SWITCH_USER) called from lshal; storing it: %s", toString(value).c_str()); ALOGD("set(SWITCH_USER) called from lshal; storing it: %s", toString(value).c_str());
mSwitchUserResponseFromCmd.reset(new VehiclePropValue(value)); mSwitchUserResponseFromCmd.reset(new VehiclePropValue(value));
return {}; return {};