summaryrefslogtreecommitdiffstats
path: root/recovery_ui/screen_ui.cpp
diff options
context:
space:
mode:
authorTianjie Xu <xunchang@google.com>2019-04-23 20:04:48 +0200
committerandroid-build-merger <android-build-merger@google.com>2019-04-23 20:04:48 +0200
commit05e295b755ef0e85a69f7c3f4bee95be35c7d8d2 (patch)
treeab6e894d70a688599fb37cbbdeb2cc98cd51bee4 /recovery_ui/screen_ui.cpp
parentMerge "minadbd: Support rescue install and getprop commands." (diff)
parentMerge changes Ibdb7dd0b,Iafd3e846 (diff)
downloadandroid_bootable_recovery-05e295b755ef0e85a69f7c3f4bee95be35c7d8d2.tar
android_bootable_recovery-05e295b755ef0e85a69f7c3f4bee95be35c7d8d2.tar.gz
android_bootable_recovery-05e295b755ef0e85a69f7c3f4bee95be35c7d8d2.tar.bz2
android_bootable_recovery-05e295b755ef0e85a69f7c3f4bee95be35c7d8d2.tar.lz
android_bootable_recovery-05e295b755ef0e85a69f7c3f4bee95be35c7d8d2.tar.xz
android_bootable_recovery-05e295b755ef0e85a69f7c3f4bee95be35c7d8d2.tar.zst
android_bootable_recovery-05e295b755ef0e85a69f7c3f4bee95be35c7d8d2.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) {