diff --git a/main.cpp b/main.cpp index d4b1c38..27a701b 100644 --- a/main.cpp +++ b/main.cpp @@ -226,7 +226,7 @@ static int process_config(VolumeManager* vm, bool* has_adoptable, bool* has_quot *has_adoptable = false; *has_quota = false; *has_reserved = false; - for (const auto& entry : fstab_default) { + for (auto& entry : fstab_default) { if (entry.fs_mgr_flags.quota) { *has_quota = true; } @@ -234,6 +234,11 @@ static int process_config(VolumeManager* vm, bool* has_adoptable, bool* has_quot *has_reserved = true; } + /* Make sure logical partitions have an updated blk_device. */ + if (entry.fs_mgr_flags.logical && !fs_mgr_update_logical_partition(&entry)) { + PLOG(FATAL) << "could not find logical partition " << entry.blk_device; + } + if (entry.fs_mgr_flags.vold_managed) { if (entry.fs_mgr_flags.nonremovable) { LOG(WARNING) << "nonremovable no longer supported; ignoring volume";