diff options
| author | 2022-11-08 00:08:23 +0000 | |
|---|---|---|
| committer | 2022-11-08 00:08:35 +0000 | |
| commit | 68e317c4e36cdfbd2016cd6fd75f4b61b4a2963b (patch) | |
| tree | 89f3f9195d84d83febce9c31ef7d5cc778b95402 | |
| parent | 64dcbfe484d283d4069dbccdf2f87c1e9628fbf4 (diff) | |
Restricts driver assistance location bypass to current user.
To support concurrent multi user in multi display, we restrict driver
assistance location bypass to current user which is always driver.
Bug: 236139244
Bug: 245357588
Test: atest CtsLocaitonHostTestCases
Test: manually in emulator
Change-Id: I1c47690f525e0084de32faf24d837492976ddf52
| -rw-r--r-- | services/core/java/com/android/server/location/provider/LocationProviderManager.java | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/location/provider/LocationProviderManager.java b/services/core/java/com/android/server/location/provider/LocationProviderManager.java index 338a99567b67..9f6487d2e79b 100644 --- a/services/core/java/com/android/server/location/provider/LocationProviderManager.java +++ b/services/core/java/com/android/server/location/provider/LocationProviderManager.java @@ -661,6 +661,8 @@ public class LocationProviderManager extends if (!GPS_PROVIDER.equals(mName)) { Log.e(TAG, "adas gnss bypass request received in non-gps provider"); adasGnssBypass = false; + } else if (!mUserHelper.isCurrentUserId(getIdentity().getUserId())) { + adasGnssBypass = false; } else if (!mLocationSettings.getUserSettings( getIdentity().getUserId()).isAdasGnssLocationEnabled()) { adasGnssBypass = false; @@ -1712,6 +1714,8 @@ public class LocationProviderManager extends if (!GPS_PROVIDER.equals(mName)) { Log.e(TAG, "adas gnss bypass request received in non-gps provider"); adasGnssBypass = false; + } else if (!mUserHelper.isCurrentUserId(identity.getUserId())) { + adasGnssBypass = false; } else if (!mLocationSettings.getUserSettings( identity.getUserId()).isAdasGnssLocationEnabled()) { adasGnssBypass = false; |