summaryrefslogtreecommitdiff
path: root/com/android/server/om/OverlayManagerSettings.java
diff options
context:
space:
mode:
Diffstat (limited to 'com/android/server/om/OverlayManagerSettings.java')
-rw-r--r--com/android/server/om/OverlayManagerSettings.java8
1 files changed, 6 insertions, 2 deletions
diff --git a/com/android/server/om/OverlayManagerSettings.java b/com/android/server/om/OverlayManagerSettings.java
index 863045c2..e176351f 100644
--- a/com/android/server/om/OverlayManagerSettings.java
+++ b/com/android/server/om/OverlayManagerSettings.java
@@ -179,15 +179,19 @@ final class OverlayManagerSettings {
List<OverlayInfo> getOverlaysForTarget(@NonNull final String targetPackageName,
final int userId) {
+ // Static RROs targeting "android" are loaded from AssetManager, and so they should be
+ // ignored in OverlayManagerService.
return selectWhereTarget(targetPackageName, userId)
- .filter((i) -> !i.isStatic())
+ .filter((i) -> !(i.isStatic() && "android".equals(i.getTargetPackageName())))
.map(SettingsItem::getOverlayInfo)
.collect(Collectors.toList());
}
ArrayMap<String, List<OverlayInfo>> getOverlaysForUser(final int userId) {
+ // Static RROs targeting "android" are loaded from AssetManager, and so they should be
+ // ignored in OverlayManagerService.
return selectWhereUser(userId)
- .filter((i) -> !i.isStatic())
+ .filter((i) -> !(i.isStatic() && "android".equals(i.getTargetPackageName())))
.map(SettingsItem::getOverlayInfo)
.collect(Collectors.groupingBy(info -> info.targetPackageName, ArrayMap::new,
Collectors.toList()));