summaryrefslogtreecommitdiffstats
path: root/recovery_ui/screen_ui.cpp
diff options
context:
space:
mode:
authorTianjie Xu <xunchang@google.com>2019-04-23 20:26:08 +0200
committerandroid-build-merger <android-build-merger@google.com>2019-04-23 20:26:08 +0200
commit3e165c8607781160a727e5a4f19ce7db990128c7 (patch)
tree81e9b527c47bf3379d8080a228e929b19a3cd56b /recovery_ui/screen_ui.cpp
parentMerge "minadbd: Support rescue install and getprop commands." am: f365574a60 (diff)
parentMerge changes Ibdb7dd0b,Iafd3e846 (diff)
downloadandroid_bootable_recovery-3e165c8607781160a727e5a4f19ce7db990128c7.tar
android_bootable_recovery-3e165c8607781160a727e5a4f19ce7db990128c7.tar.gz
android_bootable_recovery-3e165c8607781160a727e5a4f19ce7db990128c7.tar.bz2
android_bootable_recovery-3e165c8607781160a727e5a4f19ce7db990128c7.tar.lz
android_bootable_recovery-3e165c8607781160a727e5a4f19ce7db990128c7.tar.xz
android_bootable_recovery-3e165c8607781160a727e5a4f19ce7db990128c7.tar.zst
android_bootable_recovery-3e165c8607781160a727e5a4f19ce7db990128c7.zip
Diffstat (limited to 'recovery_ui/screen_ui.cpp')
-rw-r--r--recovery_ui/screen_ui.cpp20
1 files changed, 15 insertions, 5 deletions
diff --git a/recovery_ui/screen_ui.cpp b/recovery_ui/screen_ui.cpp
index 870db621c..823004521 100644
--- a/recovery_ui/screen_ui.cpp
+++ b/recovery_ui/screen_ui.cpp
@@ -817,12 +817,22 @@ std::unique_ptr<GRSurface> ScreenRecoveryUI::LoadBitmap(const std::string& filen
std::unique_ptr<GRSurface> ScreenRecoveryUI::LoadLocalizedBitmap(const std::string& filename) {
GRSurface* surface;
- if (auto result = res_create_localized_alpha_surface(filename.c_str(), locale_.c_str(), &surface);
- result < 0) {
- LOG(ERROR) << "Failed to load bitmap " << filename << " (error " << result << ")";
- return nullptr;
+ auto result = res_create_localized_alpha_surface(filename.c_str(), locale_.c_str(), &surface);
+ if (result == 0) {
+ return std::unique_ptr<GRSurface>(surface);
}
- return std::unique_ptr<GRSurface>(surface);
+ // TODO(xunchang) create a error code enum to refine the retry condition.
+ LOG(WARNING) << "Failed to load bitmap " << filename << " for locale " << locale_ << " (error "
+ << result << "). Falling back to use default locale.";
+
+ result = res_create_localized_alpha_surface(filename.c_str(), DEFAULT_LOCALE, &surface);
+ if (result == 0) {
+ return std::unique_ptr<GRSurface>(surface);
+ }
+
+ LOG(ERROR) << "Failed to load bitmap " << filename << " for locale " << DEFAULT_LOCALE
+ << " (error " << result << ")";
+ return nullptr;
}
static char** Alloc2d(size_t rows, size_t cols) {