[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