summaryrefslogtreecommitdiff
path: root/libs/androidfw/ConfigDescription.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libs/androidfw/ConfigDescription.cpp')
-rw-r--r--libs/androidfw/ConfigDescription.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/libs/androidfw/ConfigDescription.cpp b/libs/androidfw/ConfigDescription.cpp
index 1f3a89edb8af..19ead9583eb2 100644
--- a/libs/androidfw/ConfigDescription.cpp
+++ b/libs/androidfw/ConfigDescription.cpp
@@ -887,13 +887,16 @@ bool ConfigDescription::Dominates(const ConfigDescription& o) const {
}
// Locale de-duping is not-trivial, disable for now (b/62409213).
- if (diff(o) & CONFIG_LOCALE) {
+ // We must also disable de-duping for all configuration qualifiers with precedence higher than
+ // locale (b/171892595)
+ if (diff(o) & (CONFIG_LOCALE | CONFIG_MCC | CONFIG_MNC)) {
return false;
}
if (*this == DefaultConfig()) {
return true;
}
+
return MatchWithDensity(o) && !o.MatchWithDensity(*this) &&
!isMoreSpecificThan(o) && !o.HasHigherPrecedenceThan(*this);
}