X-Git-Url: http://dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FRoute%2FNode.pm;h=51ecedea2bb6575c9d58220cba96011e696cd9e4;hb=e514a048764b07970b03e490b560de73c2489902;hp=4bb4c9ca4812624e43b6ed9170f7504c1d17c16a;hpb=eca912fbdcba8f6ee91f757aac3bf95f4d6bafab;p=spider.git diff --git a/perl/Route/Node.pm b/perl/Route/Node.pm index 4bb4c9ca..51ecedea 100644 --- a/perl/Route/Node.pm +++ b/perl/Route/Node.pm @@ -56,24 +56,14 @@ sub max sub add { my $parent = shift; - my $call = shift; - my $self; - - if (ref $call) { - $self = $call; - $call = $self->{call}; - } else { - $self = get($call); - } - - confess "Trying to add NULL Node call to routing tables" unless $call; - + my $call = uc shift; + confess "Route::add trying to add $call to myself" if $call eq $parent->{call}; + my $self = get($call); if ($self) { $self->_addparent($parent->{call}); $parent->_addnode($call); return undef; } - confess "Route::Node::add trying to add $call to myself" if $call eq $parent->{call}; $parent->_addnode($call); $self = $parent->new($call, @_); return $self;