Check processName when starting providers.
Bug: 28708253
Change-Id: I346441021295273c356619c60caa6086ef165363
diff --git a/services/core/java/com/android/server/am/ActivityManagerService.java b/services/core/java/com/android/server/am/ActivityManagerService.java
index ded6556..6e9e520 100644
--- a/services/core/java/com/android/server/am/ActivityManagerService.java
+++ b/services/core/java/com/android/server/am/ActivityManagerService.java
@@ -239,6 +239,7 @@
import java.util.List;
import java.util.Locale;
import java.util.Map;
+import java.util.Objects;
import java.util.Set;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicLong;
@@ -11088,8 +11089,12 @@
.getPackageInfo(pkgName, matchFlags, userId);
if (pkgInfo != null && !ArrayUtils.isEmpty(pkgInfo.providers)) {
for (ProviderInfo provInfo : pkgInfo.providers) {
- Log.v(TAG, "Installing " + provInfo);
- app.thread.scheduleInstallProvider(provInfo);
+ if (Objects.equals(provInfo.processName, app.processName)) {
+ Log.v(TAG, "Installing " + provInfo);
+ app.thread.scheduleInstallProvider(provInfo);
+ } else {
+ Log.v(TAG, "Skipping " + provInfo);
+ }
}
}
} catch (RemoteException ignored) {