summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOlawale Ogunwale <ogunwale@google.com>2015-05-15 20:34:18 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2015-05-15 20:34:19 +0000
commit358d12a06c31c1471cffe2584715f2f8836e1abd (patch)
tree0dd3b6fd5a1a06b1341e7e2e034c37e1131dd408
parent27d86295347fbcdc7c2790c9b95e29b01f19d51b (diff)
parent5ff8ba7ace9b748892a2406995fe3eca87f682d4 (diff)
downloadframeworks_base-358d12a06c31c1471cffe2584715f2f8836e1abd.zip
frameworks_base-358d12a06c31c1471cffe2584715f2f8836e1abd.tar.gz
frameworks_base-358d12a06c31c1471cffe2584715f2f8836e1abd.tar.bz2
Merge "Fix lost singleton provider after force-stopping user or package." into mnc-dev
-rw-r--r--services/core/java/com/android/server/am/ProviderMap.java7
1 files changed, 5 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/am/ProviderMap.java b/services/core/java/com/android/server/am/ProviderMap.java
index a1dc3e3..ed8b1dd 100644
--- a/services/core/java/com/android/server/am/ProviderMap.java
+++ b/services/core/java/com/android/server/am/ProviderMap.java
@@ -210,8 +210,11 @@ public final class ProviderMap {
boolean collectPackageProvidersLocked(String packageName, Set<String> filterByClasses,
boolean doit, boolean evenPersistent, int userId,
ArrayList<ContentProviderRecord> result) {
- boolean didSomething = collectPackageProvidersLocked(packageName, filterByClasses,
- doit, evenPersistent, mSingletonByClass, result);
+ boolean didSomething = false;
+ if (userId == UserHandle.USER_ALL || userId == UserHandle.USER_OWNER) {
+ didSomething = collectPackageProvidersLocked(packageName, filterByClasses,
+ doit, evenPersistent, mSingletonByClass, result);
+ }
if (!doit && didSomething) {
return true;
}