diff options
author | Tao Bao <tbao@google.com> | 2017-05-11 06:37:13 +0200 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2017-05-11 06:37:13 +0200 |
commit | b0626221a1fc177f39d47b2b7b6039c538dfe39a (patch) | |
tree | 4e380215c10544178d89198363ed7df2ba4c9b5b /roots.cpp | |
parent | Merge "otautil: Android.mk -> Android.bp" (diff) | |
parent | Merge "recovery: Skip "/" in setup_install_mounts()." (diff) | |
download | android_bootable_recovery-b0626221a1fc177f39d47b2b7b6039c538dfe39a.tar android_bootable_recovery-b0626221a1fc177f39d47b2b7b6039c538dfe39a.tar.gz android_bootable_recovery-b0626221a1fc177f39d47b2b7b6039c538dfe39a.tar.bz2 android_bootable_recovery-b0626221a1fc177f39d47b2b7b6039c538dfe39a.tar.lz android_bootable_recovery-b0626221a1fc177f39d47b2b7b6039c538dfe39a.tar.xz android_bootable_recovery-b0626221a1fc177f39d47b2b7b6039c538dfe39a.tar.zst android_bootable_recovery-b0626221a1fc177f39d47b2b7b6039c538dfe39a.zip |
Diffstat (limited to 'roots.cpp')
-rw-r--r-- | roots.cpp | 41 |
1 files changed, 22 insertions, 19 deletions
@@ -260,26 +260,29 @@ int format_volume(const char* volume) { } int setup_install_mounts() { - if (fstab == NULL) { - LOG(ERROR) << "can't set up install mounts: no fstab loaded"; - return -1; - } - for (int i = 0; i < fstab->num_entries; ++i) { - Volume* v = fstab->recs + i; + if (fstab == nullptr) { + LOG(ERROR) << "can't set up install mounts: no fstab loaded"; + return -1; + } + for (int i = 0; i < fstab->num_entries; ++i) { + const Volume* v = fstab->recs + i; - if (strcmp(v->mount_point, "/tmp") == 0 || - strcmp(v->mount_point, "/cache") == 0) { - if (ensure_path_mounted(v->mount_point) != 0) { - LOG(ERROR) << "failed to mount " << v->mount_point; - return -1; - } + // We don't want to do anything with "/". + if (strcmp(v->mount_point, "/") == 0) { + continue; + } - } else { - if (ensure_path_unmounted(v->mount_point) != 0) { - LOG(ERROR) << "failed to unmount " << v->mount_point; - return -1; - } - } + if (strcmp(v->mount_point, "/tmp") == 0 || strcmp(v->mount_point, "/cache") == 0) { + if (ensure_path_mounted(v->mount_point) != 0) { + LOG(ERROR) << "failed to mount " << v->mount_point; + return -1; + } + } else { + if (ensure_path_unmounted(v->mount_point) != 0) { + LOG(ERROR) << "failed to unmount " << v->mount_point; + return -1; + } } - return 0; + } + return 0; } |