diff options
author | Tianjie Xu <xunchang@google.com> | 2019-07-10 19:40:37 +0200 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2019-07-10 19:40:37 +0200 |
commit | 5f408dd48a6ed4887d1c5e623ab7b702a6435137 (patch) | |
tree | e54980f253f5b28db706f1d3dc4a2086acc40212 /install | |
parent | Merge "Change the symlink to system_ext" (diff) | |
parent | Create a fallback to install from fuse if mmap fails (diff) | |
download | android_bootable_recovery-5f408dd48a6ed4887d1c5e623ab7b702a6435137.tar android_bootable_recovery-5f408dd48a6ed4887d1c5e623ab7b702a6435137.tar.gz android_bootable_recovery-5f408dd48a6ed4887d1c5e623ab7b702a6435137.tar.bz2 android_bootable_recovery-5f408dd48a6ed4887d1c5e623ab7b702a6435137.tar.lz android_bootable_recovery-5f408dd48a6ed4887d1c5e623ab7b702a6435137.tar.xz android_bootable_recovery-5f408dd48a6ed4887d1c5e623ab7b702a6435137.tar.zst android_bootable_recovery-5f408dd48a6ed4887d1c5e623ab7b702a6435137.zip |
Diffstat (limited to 'install')
-rw-r--r-- | install/fuse_install.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/install/fuse_install.cpp b/install/fuse_install.cpp index ffde4a348..8a7a278e0 100644 --- a/install/fuse_install.cpp +++ b/install/fuse_install.cpp @@ -128,11 +128,12 @@ static bool StartInstallPackageFuse(std::string_view path) { constexpr auto FUSE_BLOCK_SIZE = 65536; bool is_block_map = android::base::ConsumePrefix(&path, "@"); - auto file_data_reader = + auto fuse_data_provider = is_block_map ? FuseBlockDataProvider::CreateFromBlockMap(std::string(path), FUSE_BLOCK_SIZE) : FuseFileDataProvider::CreateFromFile(std::string(path), FUSE_BLOCK_SIZE); - if (!file_data_reader->Valid()) { + if (!fuse_data_provider || !fuse_data_provider->Valid()) { + LOG(ERROR) << "Failed to create fuse data provider."; return false; } @@ -142,7 +143,7 @@ static bool StartInstallPackageFuse(std::string_view path) { umount2(SDCARD_ROOT, MNT_DETACH); } - return run_fuse_sideload(std::move(file_data_reader)) == 0; + return run_fuse_sideload(std::move(fuse_data_provider)) == 0; } InstallResult InstallWithFuseFromPath(std::string_view path, RecoveryUI* ui) { |