summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorxunchang <xunchang@google.com>2019-04-23 00:32:17 +0200
committerxunchang <xunchang@google.com>2019-04-23 00:32:17 +0200
commit34723087fe79349607e3128707f0739e5e230a77 (patch)
tree37b1d9358f035930bba811c9b50e41fa8d3c9a50
parentFall back to en-US if localized bitmap is missing for a locale (diff)
downloadandroid_bootable_recovery-34723087fe79349607e3128707f0739e5e230a77.tar
android_bootable_recovery-34723087fe79349607e3128707f0739e5e230a77.tar.gz
android_bootable_recovery-34723087fe79349607e3128707f0739e5e230a77.tar.bz2
android_bootable_recovery-34723087fe79349607e3128707f0739e5e230a77.tar.lz
android_bootable_recovery-34723087fe79349607e3128707f0739e5e230a77.tar.xz
android_bootable_recovery-34723087fe79349607e3128707f0739e5e230a77.tar.zst
android_bootable_recovery-34723087fe79349607e3128707f0739e5e230a77.zip
-rw-r--r--minui/resources.cpp4
-rw-r--r--tests/unit/locale_test.cpp4
2 files changed, 6 insertions, 2 deletions
diff --git a/minui/resources.cpp b/minui/resources.cpp
index 53c932bff..00d36d5fb 100644
--- a/minui/resources.cpp
+++ b/minui/resources.cpp
@@ -347,6 +347,10 @@ bool matches_locale(const std::string& prefix, const std::string& locale) {
// match the locale string without the {script} section.
// For instance, prefix == "en" matches locale == "en-US", prefix == "sr-Latn" matches locale
// == "sr-Latn-BA", and prefix == "zh-CN" matches locale == "zh-Hans-CN".
+ if (prefix.empty()) {
+ return false;
+ }
+
if (android::base::StartsWith(locale, prefix)) {
return true;
}
diff --git a/tests/unit/locale_test.cpp b/tests/unit/locale_test.cpp
index cdaba0e8b..c69434c12 100644
--- a/tests/unit/locale_test.cpp
+++ b/tests/unit/locale_test.cpp
@@ -27,7 +27,7 @@ TEST(LocaleTest, Misc) {
EXPECT_FALSE(matches_locale("en-GB", "en"));
EXPECT_FALSE(matches_locale("en-GB", "en-US"));
EXPECT_FALSE(matches_locale("en-US", ""));
- // Empty locale prefix in the PNG file will match the input locale.
- EXPECT_TRUE(matches_locale("", "en-US"));
+ // Empty locale prefix in the PNG file should not match the input locale.
+ EXPECT_FALSE(matches_locale("", "en-US"));
EXPECT_TRUE(matches_locale("sr-Latn", "sr-Latn-BA"));
}