From 03c6aa59fa18d75d3b123c54bf5081b40362b993 Mon Sep 17 00:00:00 2001 From: Kweku Adams Date: Wed, 3 Aug 2022 20:59:02 +0000 Subject: [PATCH] Add missing lock. Bug: 241282429 Test: Android builds Change-Id: Ieca39f51efd1de8c02e151bcdac97d6b6103dd55 (cherry picked from commit b573e9e8d3c2599b622403f29eb033184a2b57ef) --- .../android/server/alarm/AlarmManagerService.java | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/apex/jobscheduler/service/java/com/android/server/alarm/AlarmManagerService.java b/apex/jobscheduler/service/java/com/android/server/alarm/AlarmManagerService.java index c94cc8ff2612c..37ce0d29d0e10 100644 --- a/apex/jobscheduler/service/java/com/android/server/alarm/AlarmManagerService.java +++ b/apex/jobscheduler/service/java/com/android/server/alarm/AlarmManagerService.java @@ -5262,13 +5262,15 @@ public class AlarmManagerService extends SystemService { + TareBill.getName(bill) + " changed to " + canAfford); } - ArrayMap actionAffordability = - mAffordabilityCache.get(userId, packageName); - if (actionAffordability == null) { - actionAffordability = new ArrayMap<>(); - mAffordabilityCache.add(userId, packageName, actionAffordability); + synchronized (mLock) { + ArrayMap actionAffordability = + mAffordabilityCache.get(userId, packageName); + if (actionAffordability == null) { + actionAffordability = new ArrayMap<>(); + mAffordabilityCache.add(userId, packageName, actionAffordability); + } + actionAffordability.put(bill, canAfford); } - actionAffordability.put(bill, canAfford); mHandler.obtainMessage(AlarmHandler.TARE_AFFORDABILITY_CHANGED, userId, canAfford ? 1 : 0, packageName)