Merge "[AC] Fix NPE. If the client sends multiple unregister requests at the same time, the client request could be null before the next request is processed."
diff --git a/services/core/java/com/android/server/ambientcontext/AmbientContextManagerService.java b/services/core/java/com/android/server/ambientcontext/AmbientContextManagerService.java
index 46e6001..9e23363 100644
--- a/services/core/java/com/android/server/ambientcontext/AmbientContextManagerService.java
+++ b/services/core/java/com/android/server/ambientcontext/AmbientContextManagerService.java
@@ -56,11 +56,11 @@
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.Arrays;
-import java.util.concurrent.ConcurrentHashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Objects;
import java.util.Set;
+import java.util.concurrent.ConcurrentHashMap;
/**
* System service for managing {@link AmbientContextEvent}s.
@@ -600,7 +600,7 @@
unregisterObserver_enforcePermission();
assertCalledByPackageOwner(callingPackage);
- synchronized (mLock) {
+ synchronized (mExistingClientRequests) {
for (ClientRequest cr : mExistingClientRequests) {
if (cr.getPackageName().equals(callingPackage)) {
AmbientContextManagerPerUserService service =