aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjrior001 <jriordan001@gmail.com>2019-03-24 17:57:07 -0400
committerMichael Bestas <mkbestas@lineageos.org>2019-04-04 21:52:00 +0300
commit25f976d03d270f3eda68f63bc6aef5e5f7f5c994 (patch)
tree0e79c4d9650b6470389a95cf3452c6fe57017ec8
parent37d729bf9d8516b6e530941ffc90ca5b2beccc61 (diff)
downloadandroid_bootable_recovery-25f976d03d270f3eda68f63bc6aef5e5f7f5c994.tar.gz
android_bootable_recovery-25f976d03d270f3eda68f63bc6aef5e5f7f5c994.tar.bz2
android_bootable_recovery-25f976d03d270f3eda68f63bc6aef5e5f7f5c994.zip
recovery: add reboot to recovery option
Change-Id: I8684e188577fa16073723e0093e221b767a3826d
-rw-r--r--device.cpp2
-rw-r--r--device.h11
-rw-r--r--recovery.cpp5
3 files changed, 13 insertions, 5 deletions
diff --git a/device.cpp b/device.cpp
index f2c5124a..06b83566 100644
--- a/device.cpp
+++ b/device.cpp
@@ -72,6 +72,7 @@ static const MenuItem ADVANCED_MENU_ITEMS[] = {
#else
MenuItem("Reboot to bootloader"),
#endif
+ MenuItem("Reboot to recovery"),
MenuItem("Mount system"),
MenuItem("View logs"),
MenuItem("Run graphics test"),
@@ -83,6 +84,7 @@ static const MenuItemVector advanced_menu_items_ =
static const Device::BuiltinAction ADVANCED_MENU_ACTIONS[] = {
Device::REBOOT_BOOTLOADER,
+ Device::REBOOT_RECOVERY,
Device::MOUNT_SYSTEM,
Device::VIEW_RECOVERY_LOGS,
Device::RUN_GRAPHICS_TEST,
diff --git a/device.h b/device.h
index 340aad28..8b791e0a 100644
--- a/device.h
+++ b/device.h
@@ -67,11 +67,12 @@ class Device {
WIPE_SYSTEM = 12,
// Advanced menu
REBOOT_BOOTLOADER = 20,
- MOUNT_SYSTEM = 21,
- VIEW_RECOVERY_LOGS = 22,
- RUN_GRAPHICS_TEST = 23,
- RUN_LOCALE_TEST = 24,
- SHUTDOWN = 25,
+ REBOOT_RECOVERY = 21,
+ MOUNT_SYSTEM = 22,
+ VIEW_RECOVERY_LOGS = 23,
+ RUN_GRAPHICS_TEST = 24,
+ RUN_LOCALE_TEST = 25,
+ SHUTDOWN = 26,
};
typedef std::vector<MenuItem> MenuItemVector;
diff --git a/recovery.cpp b/recovery.cpp
index 99bb03a0..707c0388 100644
--- a/recovery.cpp
+++ b/recovery.cpp
@@ -1338,6 +1338,7 @@ static Device::BuiltinAction prompt_and_wait(Device* device, int status) {
case Device::REBOOT:
case Device::SHUTDOWN:
case Device::REBOOT_BOOTLOADER:
+ case Device::REBOOT_RECOVERY:
return chosen_action;
case Device::WIPE_DATA:
@@ -1983,6 +1984,10 @@ int main(int argc, char **argv) {
#endif
break;
+ case Device::REBOOT_RECOVERY:
+ ui->Print("Rebooting to recovery...\n");
+ android::base::SetProperty(ANDROID_RB_PROPERTY, "reboot,recovery");
+ break;
default:
ui->Print("Rebooting...\n");
reboot("reboot,");