X-Git-Url: http://scm.dxcluster.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FDXProtHandle.pm;h=9e5d249f33e9af00fed07ce032c3be65b4aafbab;hb=7e4d1632dbe6cb79a43e4954919c6744513fed56;hp=fc05280a92afd22317cce66601e064478fcd3caf;hpb=b953903f1c33ae35ce24bad344e46ab17b0b5d95;p=spider.git diff --git a/perl/DXProtHandle.pm b/perl/DXProtHandle.pm index fc05280a..9e5d249f 100644 --- a/perl/DXProtHandle.pm +++ b/perl/DXProtHandle.pm @@ -1342,7 +1342,7 @@ sub gen_pc9x_t return $_last_time - $main::systime_daystart; } else { $_last_occurs++; - return sprintf "$_last_time.%02d", $_last_occurs; + return sprintf "%d.%02d", $_last_time - $main::systime_daystart, $_last_occurs; } } @@ -1395,8 +1395,7 @@ sub handle_92 return; } - my $parent = check_pc9x_t($pcall, $t, 92, 1); - return unless $parent; + my $parent = check_pc9x_t($pcall, $t, 92, 1) || return; $parent->lastid->{92} = $t; $parent->do_pc92(1); @@ -1476,12 +1475,10 @@ sub handle_92 $self->route_pc21($pcall, undef, $r) if $r->isa('Route::Node'); $self->route_pc17($pcall, undef, $parent, $r) if $r->isa('Route::User'); } - foreach my $r (@radd) { - next unless $r; - - $self->route_pc19($pcall, undef, $r) if $r->isa('Route::Node'); - $self->route_pc16($pcall, undef, $parent, $r) if $r->isa('Route::User'); - } + my @pc19 = grep { $_ && $_->isa('Route::Node') } @radd; + my @pc16 = grep { $_ && $_->isa('Route::User') } @radd; + $self->route_pc19($pcall, undef, @pc19) if @pc19; + $self->route_pc16($pcall, undef, $parent, @pc16) if @pc16; } # if get here then rebroadcast the thing with its Hop count decremented (if