summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTao Bao <tbao@google.com>2018-06-06 22:17:39 +0200
committerandroid-build-merger <android-build-merger@google.com>2018-06-06 22:17:39 +0200
commit756c12404c00b116a18093516079995fd97a4adf (patch)
tree0d2df0d2ecd10ea6824557b4a1d62bdac1c110eb
parentMerge "tests: Specify the death test style to avoid flakiness." am: 878d5a77f0 am: d770790a8f (diff)
parentMerge "ui: join only if joinable." am: 2454b2493a (diff)
downloadandroid_bootable_recovery-756c12404c00b116a18093516079995fd97a4adf.tar
android_bootable_recovery-756c12404c00b116a18093516079995fd97a4adf.tar.gz
android_bootable_recovery-756c12404c00b116a18093516079995fd97a4adf.tar.bz2
android_bootable_recovery-756c12404c00b116a18093516079995fd97a4adf.tar.lz
android_bootable_recovery-756c12404c00b116a18093516079995fd97a4adf.tar.xz
android_bootable_recovery-756c12404c00b116a18093516079995fd97a4adf.tar.zst
android_bootable_recovery-756c12404c00b116a18093516079995fd97a4adf.zip
-rw-r--r--screen_ui.cpp4
-rw-r--r--tests/unit/screen_ui_test.cpp5
-rw-r--r--ui.cpp4
3 files changed, 11 insertions, 2 deletions
diff --git a/screen_ui.cpp b/screen_ui.cpp
index b9aba807d..b4ef054ce 100644
--- a/screen_ui.cpp
+++ b/screen_ui.cpp
@@ -173,7 +173,9 @@ ScreenRecoveryUI::ScreenRecoveryUI(bool scrollable_menu)
ScreenRecoveryUI::~ScreenRecoveryUI() {
progress_thread_stopped_ = true;
- progress_thread_.join();
+ if (progress_thread_.joinable()) {
+ progress_thread_.join();
+ }
}
GRSurface* ScreenRecoveryUI::GetCurrentFrame() const {
diff --git a/tests/unit/screen_ui_test.cpp b/tests/unit/screen_ui_test.cpp
index 2179b729f..a3dd2add9 100644
--- a/tests/unit/screen_ui_test.cpp
+++ b/tests/unit/screen_ui_test.cpp
@@ -293,6 +293,11 @@ TEST_F(ScreenRecoveryUITest, Init) {
ASSERT_FALSE(ui_->WasTextEverVisible());
}
+TEST_F(ScreenRecoveryUITest, dtor_NotCallingInit) {
+ ui_.reset();
+ ASSERT_FALSE(ui_);
+}
+
TEST_F(ScreenRecoveryUITest, ShowText) {
ASSERT_TRUE(ui_->Init(kTestLocale));
ASSERT_FALSE(ui_->IsTextVisible());
diff --git a/ui.cpp b/ui.cpp
index 51d7f129c..6c91d01b8 100644
--- a/ui.cpp
+++ b/ui.cpp
@@ -78,7 +78,9 @@ RecoveryUI::RecoveryUI()
RecoveryUI::~RecoveryUI() {
ev_exit();
input_thread_stopped_ = true;
- input_thread_.join();
+ if (input_thread_.joinable()) {
+ input_thread_.join();
+ }
}
void RecoveryUI::OnKeyDetected(int key_code) {