X-Git-Url: http://gb7djk.dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FProt.pm;h=23de1538198bf2c72aa3764d7f3856c41e7868a5;hb=a35c16af85ef1707879f24e065a66ba3c9ae60c1;hp=be1d6282d5e947e132bd091fd10a0a5d1c983dfb;hpb=dbf7523a9b228dbdf1d03109afde351b8b194fab;p=spider.git diff --git a/perl/Prot.pm b/perl/Prot.pm index be1d6282..23de1538 100644 --- a/perl/Prot.pm +++ b/perl/Prot.pm @@ -53,15 +53,14 @@ sub new sub AUTOLOAD { - no strict "refs"; - my $self = shift; + no strict; my $name = $AUTOLOAD; return if $name =~ /::DESTROY$/; - $name =~ s/.*:://o; + $name =~ s/^.*:://o; confess "Non-existant field '$AUTOLOAD'" if !$valid{$name}; - *{$AUTOLOAD} = sub {@_ > 1 ? $_[0]->{$name} = $_[1] : $_[0]->{$name}} ; - @_ ? $self->{$name} = shift : $self->{$name} ; + *$AUTOLOAD = sub {@_ > 1 ? $_[0]->{$name} = $_[1] : $_[0]->{$name}}; + goto &$AUTOLOAD; } 1;