summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOlivier Blin <oblin@mandriva.com>2008-03-20 15:39:46 +0000
committerOlivier Blin <oblin@mandriva.com>2008-03-20 15:39:46 +0000
commitb8f12f7035e50b5a40403c5cec51b8a04bbcbb76 (patch)
tree157f967d229829365ae17abab17b3c27cd8c3c5d
parent692dc2234d899c0867d9da250f37817b07e74e43 (diff)
downloaddraklive-install-b8f12f7035e50b5a40403c5cec51b8a04bbcbb76.tar
draklive-install-b8f12f7035e50b5a40403c5cec51b8a04bbcbb76.tar.gz
draklive-install-b8f12f7035e50b5a40403c5cec51b8a04bbcbb76.tar.bz2
draklive-install-b8f12f7035e50b5a40403c5cec51b8a04bbcbb76.tar.xz
draklive-install-b8f12f7035e50b5a40403c5cec51b8a04bbcbb76.zip
go on unmounting when one umount fails (inline fs::mount::umount_all)
-rwxr-xr-xdraklive-install9
1 files changed, 8 insertions, 1 deletions
diff --git a/draklive-install b/draklive-install
index be4355e..099569c 100755
--- a/draklive-install
+++ b/draklive-install
@@ -100,7 +100,14 @@ sub umount_first_pass() {
fs::get_info_from_fstab($all_hds);
my $fstab = [ fs::get::fstab($all_hds) ];
fs::merge_info_from_mtab($fstab);
- eval { fs::mount::umount_all($fstab) };
+
+ #- inlined from fs::mount::umount_all to go on when one umount fail
+ #- (maybe the sort function could be shared)
+ log::l("unmounting all filesystems");
+ foreach (sort { $b->{mntpoint} cmp $a->{mntpoint} }
+ grep { $_->{mntpoint} && !$_->{real_mntpoint} } @$fstab) {
+ eval { fs::mount::umount_part($_) };
+ }
}
sub init_hds {