diff options
author | Treehugger Robot <treehugger-gerrit@google.com> | 2017-03-25 18:06:32 +0100 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2017-03-25 18:06:33 +0100 |
commit | 5f98326c1e4b10afa6c92739bfbf5a386f821a96 (patch) | |
tree | 68e3bbe90c57e8c6c127992be3eaba8c4fe62ce8 | |
parent | Merge "updater: Drop the support for BBOTA v1 and v2." (diff) | |
parent | libbootloader_message: use different fstab paths for normal/recovery boot (diff) | |
download | android_bootable_recovery-5f98326c1e4b10afa6c92739bfbf5a386f821a96.tar android_bootable_recovery-5f98326c1e4b10afa6c92739bfbf5a386f821a96.tar.gz android_bootable_recovery-5f98326c1e4b10afa6c92739bfbf5a386f821a96.tar.bz2 android_bootable_recovery-5f98326c1e4b10afa6c92739bfbf5a386f821a96.tar.lz android_bootable_recovery-5f98326c1e4b10afa6c92739bfbf5a386f821a96.tar.xz android_bootable_recovery-5f98326c1e4b10afa6c92739bfbf5a386f821a96.tar.zst android_bootable_recovery-5f98326c1e4b10afa6c92739bfbf5a386f821a96.zip |
-rw-r--r-- | bootloader_message/bootloader_message.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/bootloader_message/bootloader_message.cpp b/bootloader_message/bootloader_message.cpp index d8086be28..d17e055bb 100644 --- a/bootloader_message/bootloader_message.cpp +++ b/bootloader_message/bootloader_message.cpp @@ -19,6 +19,7 @@ #include <errno.h> #include <fcntl.h> #include <string.h> +#include <unistd.h> #include <string> #include <vector> @@ -30,8 +31,13 @@ #include <fs_mgr.h> static std::string get_misc_blk_device(std::string* err) { - std::unique_ptr<fstab, decltype(&fs_mgr_free_fstab)> fstab(fs_mgr_read_fstab_default(), - fs_mgr_free_fstab); + std::unique_ptr<fstab, decltype(&fs_mgr_free_fstab)> fstab(nullptr, fs_mgr_free_fstab); + // Use different fstab paths for normal boot and recovery boot, respectively + if (access("/sbin/recovery", F_OK) == 0) { + fstab.reset(fs_mgr_read_fstab_with_dt("/etc/recovery.fstab")); + } else { + fstab.reset(fs_mgr_read_fstab_default()); + } if (!fstab) { *err = "failed to read default fstab"; return ""; |