X-Git-Url: http://dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=cmd%2Funcatchup.pl;h=8a6f02a680eda9bfa1aa3d488528e1e3c001ccd8;hb=ab811a0c902225075a9bd69749f65594079433a9;hp=4f7808d728f322f957e732af3ef24d1ba39f2643;hpb=ece633d5cd8cbe2037b066987740701f8116d586;p=spider.git diff --git a/cmd/uncatchup.pl b/cmd/uncatchup.pl index 4f7808d7..8a6f02a6 100644 --- a/cmd/uncatchup.pl +++ b/cmd/uncatchup.pl @@ -4,7 +4,7 @@ # in other words mark all messages as being already received # by this node. # -# $Id$ +# # # Copyright (c) 1999 Dirk Koopman G1TLH # @@ -16,7 +16,7 @@ my @f = split /\s+/, $line; return (1, "usage: catchup all|[= 2; my $call = uc shift @f; -my $user = DXUser->get_current($call); +my $user = DXUser::get_current($call); return (1, "$call not a node") unless $user && $user->sort ne 'U'; my @out; @@ -28,13 +28,19 @@ foreach my $msgno (@f) { if ($msgno =~ /^al/oi) { @ref = DXMsg::get_all(); last; + } elsif (my ($f, $t) = $msgno =~ /(\d+)-(\d+)/) { + while ($f <= $t) { + $ref = DXMsg::get($f++); + push @ref, $ref if $ref; + } + } else { + $ref = DXMsg::get($msgno); + unless ($ref) { + push @out, $self->msg('m13', $msgno); + next; + } + push @ref, $ref; } - $ref = DXMsg::get($msgno); - unless ($ref) { - push @out, $self->msg('m13', $msgno); - next; - } - push @ref, $ref; } foreach $ref (@ref) {