All patches and comments are welcome. Please squash your changes to logical
commits before using git-format-patch and git-send-email to
patches@git.madduck.net.
If you'd read over the Git project's submission guidelines and adhered to them,
I'd be especially grateful.
some hosts, while not on others.
* Output list of failed repos to stderr when -s is used.
* Fix a bug caused by a stupid typo.
* Add the -n switch, for disabling recursion.
* Output list of failed repos to stderr when -s is used.
* Fix a bug caused by a stupid typo.
* Add the -n switch, for disabling recursion.
+ * Allow for more complex deleted tests, such as marking a repo deleted on
+ some hosts, while not on others.
- -- Joey Hess <joeyh@debian.org> Thu, 18 Oct 2007 15:27:01 -0400
+ -- Joey Hess <joeyh@debian.org> Thu, 18 Oct 2007 15:39:03 -0400
mr (0.3) unstable; urgency=low
mr (0.3) unstable; urgency=low
$config{$topdir}{$subdir}{lib}."\n" : "";
if (exists $config{$topdir}{$subdir}{deleted}) {
$config{$topdir}{$subdir}{lib}."\n" : "";
if (exists $config{$topdir}{$subdir}{deleted}) {
- if (! -d $dir) {
- return;
- }
- else {
- my $test="set -e;".$lib.$config{$topdir}{$subdir}{deleted};
- print "mr $action: running deleted test >>$test<<\n" if $verbose;
- my $ret=system($test);
- if ($ret != 0) {
- if (($? & 127) == 2) {
- print STDERR "mr $action: interrupted\n";
- exit 2;
- }
- elsif ($? & 127) {
- print STDERR "mr $action: deleted test received signal ".($? & 127)."\n";
- }
+ my $test="set -e;".$lib.$config{$topdir}{$subdir}{deleted};
+ print "mr $action: running deleted test >>$test<<\n" if $verbose;
+ my $ret=system($test);
+ if ($ret != 0) {
+ if (($? & 127) == 2) {
+ print STDERR "mr $action: interrupted\n";
+ exit 2;
+ elsif ($? & 127) {
+ print STDERR "mr $action: deleted test received signal ".($? & 127)."\n";
+ }
+ }
+ if ($ret >> 8 == 0) {
+ if (-d $dir) {
print STDERR "mr error: $dir should be deleted yet still exists\n\n";
push @failed, $dir;
return;
}
print STDERR "mr error: $dir should be deleted yet still exists\n\n";
push @failed, $dir;
return;
}
+ else {
+ print "mr $action: $dir skipped (as deleted) per config file\n" if $verbose;
+ push @skipped, $dir;
+ return;
+ }