diff options
| author | 2024-05-10 11:06:33 -0700 | |
|---|---|---|
| committer | 2024-05-23 16:14:30 -0700 | |
| commit | d0dcb84dfcb8a1ab88bf1abb2097179b54281fec (patch) | |
| tree | c52bc93ec9e5dcf4cf6bf81c7bee399f9873f6da | |
| parent | dde0775555515f138c700813979d1ac7751f5dd1 (diff) | |
Synchronise dumpTempWhitelistSchedule in DeviceIdleController.java
Bug: 339934804
Test: atest --iterations 5 android.alarmmanager.cts.ExactAlarmsTest#alarmClockGrantsWhitelist
Change-Id: I1f032cb3e983ecf75e5607d9510a6f8ffee13607
Signed-off-by: Abhishek Gadewar <abhishekgadewar@meta.com>
| -rw-r--r-- | apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java b/apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java index 6383ed873e59..a49ad9863c5f 100644 --- a/apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java +++ b/apex/jobscheduler/service/java/com/android/server/DeviceIdleController.java @@ -618,6 +618,7 @@ public class DeviceIdleController extends SystemService * List of end times for app-IDs that are temporarily marked as being allowed to access * the network and acquire wakelocks. Times are in milliseconds. */ + @GuardedBy("this") private final SparseArray<Pair<MutableLong, String>> mTempWhitelistAppIdEndTimes = new SparseArray<>(); @@ -4999,7 +5000,9 @@ public class DeviceIdleController extends SystemService if (!DumpUtils.checkDumpPermission(getContext(), TAG, pw)) { return -1; } - dumpTempWhitelistSchedule(pw, false); + synchronized (this) { + dumpTempWhitelistScheduleLocked(pw, false); + } } } else if ("except-idle-whitelist".equals(cmd)) { getContext().enforceCallingOrSelfPermission( @@ -5283,7 +5286,7 @@ public class DeviceIdleController extends SystemService pw.println(); } } - dumpTempWhitelistSchedule(pw, true); + dumpTempWhitelistScheduleLocked(pw, true); size = mTempWhitelistAppIdArray != null ? mTempWhitelistAppIdArray.length : 0; if (size > 0) { @@ -5411,7 +5414,8 @@ public class DeviceIdleController extends SystemService } } - void dumpTempWhitelistSchedule(PrintWriter pw, boolean printTitle) { + @GuardedBy("this") + void dumpTempWhitelistScheduleLocked(PrintWriter pw, boolean printTitle) { final int size = mTempWhitelistAppIdEndTimes.size(); if (size > 0) { String prefix = ""; |