X-Git-Url: http://gb7djk.dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FFilter.pm;h=a2f5ce46a7bac5f070e8531eaef59389e0f28b07;hb=221c5c06b353ae5ec43a7bb4448a4d087c0c7a03;hp=0ca71917db987cb5637ebe5bec404b1ddb611e64;hpb=8178d787d7cc8040fa8958197582bba5c80e6f59;p=spider.git diff --git a/perl/Filter.pm b/perl/Filter.pm index 0ca71917..a2f5ce46 100644 --- a/perl/Filter.pm +++ b/perl/Filter.pm @@ -92,7 +92,9 @@ sub compile my $rr; if ($ref->{$ar} && exists $ref->{$ar}->{asc}) { - $ref->{$ar}->{code} = eval "sub { my \$r=shift; return $ref->{$ar}->{asc}; }" ; + my $s = $ref->{$ar}->{asc}; # an optimisation? + $s =~ s/\$r/\$_[0]/g; + $ref->{$ar}->{code} = eval "sub { $s }" ; if ($@) { my $sort = $ref->{sort}; my $name = $ref->{name}; @@ -305,7 +307,7 @@ sub install } elsif ($name eq 'USER_DEFAULT') { @dxchan = DXChannel::get_all_users(); } else { - $dxchan = DXChannel->get($name); + $dxchan = DXChannel::get($name); push @dxchan, $dxchan if $dxchan; } foreach $dxchan (@dxchan) {