From: minima <minima>
Date: Wed, 3 Jan 2007 17:13:06 +0000 (+0000)
Subject: sort out the mess from the last changes
X-Git-Tag: 1.54~74
X-Git-Url: http://dxspider.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=8269f4aca3cec04a72fde0b84fbc4aeca0277b89;p=spider.git

sort out the mess from the last changes
---

diff --git a/perl/DXProt.pm b/perl/DXProt.pm
index 3ec11327..ccb183c3 100644
--- a/perl/DXProt.pm
+++ b/perl/DXProt.pm
@@ -772,7 +772,7 @@ sub send_pc92_config
 
 	# send 'my' configuration for all users and pc92 capable nodes
 	my @dxchan = grep { $_->call ne $main::mycall && $_ != $self && !$_->{isolate} } DXChannel::get_all();
-	my @localnodes = map { my $r = Route::Node::get($_->{call}); $r ? $r : () } @dxchan;
+	my @localnodes = map { my $r = Route::get($_->{call}); $r ? $r : () } @dxchan;
 #	push @localnodes, map { my $r = Route::Node::get($_->{call}); $r ? $r : () } DXChannel::get_all_users();
 	$self->send_route_pc92($main::mycall, \&pc92c, (scalar @localnodes)+1, $main::routeroot, @localnodes);
 
diff --git a/perl/DXProtHandle.pm b/perl/DXProtHandle.pm
index 903a2fd6..41986240 100644
--- a/perl/DXProtHandle.pm
+++ b/perl/DXProtHandle.pm
@@ -715,7 +715,7 @@ sub handle_19
 	if (@rout) {
 		$self->route_pc21($self->{call}, $line, @rout);
 		$self->route_pc19($self->{call}, $line, @rout);
-		$self->route_pc92a($main::mycall, $line, $parent, @rout);
+		$self->route_pc92a($main::mycall, $line, $main::routemain, @rout);
 	}
 }
 		
@@ -787,7 +787,7 @@ sub handle_21
 
 	if (@rout) {
 		$self->route_pc21($origin, $line, @rout);
-		$self->route_pc92d($main::mycall, $line, $parent, @rout);
+		$self->route_pc92d($main::mycall, $line, $main::routemain, @rout);
 	}
 }
 		
@@ -1333,7 +1333,7 @@ sub handle_92
 	my $t = $_[2];
 	my $sort = $_[3];
 	
-	my @ent = grep {$_ && /^[0-7]/} @_[4 .. -1];
+	my @ent = grep {$_ && /^[0-7]/} @_[4 .. $#_];
 	
 	if ($pcall eq $main::mycall) {
 		dbg("PCPROT: looped back, ignored") if isdbg('chanerr');
@@ -1354,7 +1354,7 @@ sub handle_92
 
 	if (@ent) {
 		my ($call, $is_node, $is_extnode, $here, $version, $build) = _decode_pc92_call($ent[0]);
-		if ($call && $is_node && $call eq $main::mycall) {
+		if ($call && $is_node && $call eq $pcall) {
 			$parent->here(Route::here($here));
 			$parent->version($version) if $version;
 			$parent->build($build) if $build;
@@ -1376,14 +1376,13 @@ sub handle_92
 	
 	if ($sort eq 'A') {
 		for (@ent) {
-			push @radd, add_thingy($parent, $_);
+			push @radd, _add_thingy($parent, $_);
 		}
 	} elsif ($sort eq 'D') {
 		for (@ent) {
 			push @rdel, _del_thingy($parent, $_);
 		}
 	} elsif ($sort eq 'C') {
-		my $i;
 		my (@nodes, @users);
 		for (@ent) {
 			my ($call, $is_node, $is_extnode, $here, $version, $build) = _decode_pc92_call($_);
@@ -1394,7 +1393,7 @@ sub handle_92
 					push @users, $call;
 				}
 			} else {
-				dbg("DXPROT: pc92 call entry '$_[$i]' not decoded, ignored") if isdbg('chanerr'); 
+				dbg("DXPROT: pc92 call entry '$_' not decoded, ignored") if isdbg('chanerr'); 
 			}
 		}
 
@@ -1403,8 +1402,8 @@ sub handle_92
 		for (@ent) {
 			my ($call, $is_node, $is_extnode, $here, $version, $build) = _decode_pc92_call($_);
 			if ($call) {
-				push @radd,_add_thingy($parent, $_[$i]) if grep $call eq $_, (@$nnodes, @$nusers);
-				push @rdel,_del_thingy($parent, $_[$i]) if grep $call eq $_, (@$dnodes, @$dusers);
+				push @radd,_add_thingy($parent, $_) if grep $call eq $_, (@$nnodes, @$nusers);
+				push @rdel,_del_thingy($parent, $_) if grep $call eq $_, (@$dnodes, @$dusers);
 			}
 		}
 	} else {
diff --git a/perl/DXProtout.pm b/perl/DXProtout.pm
index ea800726..1533c2b4 100644
--- a/perl/DXProtout.pm
+++ b/perl/DXProtout.pm
@@ -395,7 +395,8 @@ sub _gen_time
 sub _gen_pc92
 {
 	my $sort = shift;
-	my $ext = $sort eq 'C';
+#	my $ext = $sort eq 'C';
+	my $ext = 1;
 	my $s = "PC92^$main::mycall^" . _gen_time . "^$sort";
 	for (@_) {
 		$s .= "^" . _encode_pc92_call($_, $ext);