From 669fc441b6b495c0175edbef68b7f15fdccbf476 Mon Sep 17 00:00:00 2001 From: Songchun Fan Date: Thu, 3 Sep 2020 16:18:22 -0700 Subject: [PATCH] [location] system_server should not call non forUser Settings.Secure.get* methods BUG: 166312046 Test: builds Change-Id: I0bee63739ed2024ccd3f80738adedcd636790c6c --- .../server/location/util/SystemSettingsHelper.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/services/core/java/com/android/server/location/util/SystemSettingsHelper.java b/services/core/java/com/android/server/location/util/SystemSettingsHelper.java index ff4ba914cb9c0..39aeaba165792 100644 --- a/services/core/java/com/android/server/location/util/SystemSettingsHelper.java +++ b/services/core/java/com/android/server/location/util/SystemSettingsHelper.java @@ -29,6 +29,7 @@ import static com.android.server.location.LocationManagerService.D; import static com.android.server.location.LocationManagerService.TAG; import android.app.ActivityManager; +import android.content.ContentResolver; import android.content.Context; import android.database.ContentObserver; import android.net.Uri; @@ -330,11 +331,13 @@ public class SystemSettingsHelper extends SettingsHelper { @Override public float getCoarseLocationAccuracyM() { long identity = Binder.clearCallingIdentity(); + final ContentResolver cr = mContext.getContentResolver(); try { - return Settings.Secure.getFloat( - mContext.getContentResolver(), + return Settings.Secure.getFloatForUser( + cr, LOCATION_COARSE_ACCURACY_M, - DEFAULT_COARSE_LOCATION_ACCURACY_M); + DEFAULT_COARSE_LOCATION_ACCURACY_M, + cr.getUserId()); } finally { Binder.restoreCallingIdentity(identity); }