diff options
author | Yifan Hong <elsk@google.com> | 2018-11-30 23:07:24 +0100 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2018-11-30 23:07:24 +0100 |
commit | cbfeb7f6af298fa3babc58a38097fac1ee30d077 (patch) | |
tree | bae82ab18649e10b004851d75b253904ee1326ea /fsck_unshare_blocks.cpp | |
parent | Merge "Update for long long -> off64_t for fstab.length" (diff) | |
parent | SYSTEM_ROOT -> get_system_root (diff) | |
download | android_bootable_recovery-cbfeb7f6af298fa3babc58a38097fac1ee30d077.tar android_bootable_recovery-cbfeb7f6af298fa3babc58a38097fac1ee30d077.tar.gz android_bootable_recovery-cbfeb7f6af298fa3babc58a38097fac1ee30d077.tar.bz2 android_bootable_recovery-cbfeb7f6af298fa3babc58a38097fac1ee30d077.tar.lz android_bootable_recovery-cbfeb7f6af298fa3babc58a38097fac1ee30d077.tar.xz android_bootable_recovery-cbfeb7f6af298fa3babc58a38097fac1ee30d077.tar.zst android_bootable_recovery-cbfeb7f6af298fa3babc58a38097fac1ee30d077.zip |
Diffstat (limited to 'fsck_unshare_blocks.cpp')
-rw-r--r-- | fsck_unshare_blocks.cpp | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/fsck_unshare_blocks.cpp b/fsck_unshare_blocks.cpp index 684958e38..b653d13ce 100644 --- a/fsck_unshare_blocks.cpp +++ b/fsck_unshare_blocks.cpp @@ -40,7 +40,6 @@ static constexpr const char* SYSTEM_E2FSCK_BIN = "/system/bin/e2fsck_static"; static constexpr const char* TMP_E2FSCK_BIN = "/tmp/e2fsck.bin"; -static constexpr const char* SYSTEM_ROOT = "/system"; static bool copy_file(const char* source, const char* dest) { android::base::unique_fd source_fd(open(source, O_RDONLY)); @@ -121,14 +120,10 @@ bool do_fsck_unshare_blocks() { std::vector<std::string> partitions = { "/odm", "/oem", "/product", "/vendor" }; // Temporarily mount system so we can copy e2fsck_static. - bool mounted = false; - if (volume_for_mount_point(SYSTEM_ROOT) == nullptr) { - mounted = ensure_path_mounted_at("/", "/mnt/system") != -1; - partitions.push_back("/"); - } else { - mounted = ensure_path_mounted_at(SYSTEM_ROOT, "/mnt/system") != -1; - partitions.push_back(SYSTEM_ROOT); - } + std::string system_root = get_system_root(); + bool mounted = ensure_path_mounted_at(system_root.c_str(), "/mnt/system"); + partitions.push_back(system_root); + if (!mounted) { LOG(ERROR) << "Failed to mount system image."; return false; |