[Midnightbsd-cvs] mports: Chroot.pm: clear file flags before deleting stuff in
ctriv at midnightbsd.org
ctriv at midnightbsd.org
Tue Mar 18 22:46:08 EDT 2008
Log Message:
-----------
clear file flags before deleting stuff in $root/magus/
Modified Files:
--------------
mports/Tools/lib/Magus:
Chroot.pm (r1.16 -> r1.17)
-------------- next part --------------
Index: Chroot.pm
===================================================================
RCS file: /home/cvs/mports/Tools/lib/Magus/Chroot.pm,v
retrieving revision 1.16
retrieving revision 1.17
diff -L Tools/lib/Magus/Chroot.pm -L Tools/lib/Magus/Chroot.pm -u -r1.16 -r1.17
--- Tools/lib/Magus/Chroot.pm
+++ Tools/lib/Magus/Chroot.pm
@@ -151,6 +151,7 @@
my ($self) = @_;
for (qw(workdir x11base localbase packages logs)) {
+ $self->_clear_flags($self->{$_});
rmtree("$self->{root}/$self->{$_}");
$self->_mkdir($self->{$_});
}
@@ -169,6 +170,14 @@
}
+sub _clear_flags {
+ my ($self, $dir) = @_;
+
+ system("/bin/chflags -R 0 $self->{root}$dir") == 0
+ or die "chflags 0 $self->{root}$dir returned non-zero: $?\n";
+}
+
+
sub _mtree {
my ($self, $mtreefile, $dir) = @_;
@@ -276,8 +285,8 @@
system("/sbin/umount $self->{root}$_")
}
- system("/bin/chflags -R 0 $self->{root}/") == 0
- or die "chflags 0 $self->{root}/ returned non-zero: $?\n";
+
+ $self->_clear_flags("/");
rmtree($self->root) || die "Couldn't rmtree $self->{root}: $!\n";
}
More information about the Midnightbsd-cvs
mailing list