leave the pc19 in the list for longer
[spider.git] / perl / DXProt.pm
index 9a6dabf39224fd25d54b59824ddfe562f59913d7..5f910bbbc4cc6ffd99ef40426f447797ce6b49b8 100644 (file)
@@ -645,7 +645,9 @@ sub normal
                        # if there is a parent, proceed, otherwise if there is a latent PC19 in the PC19list, 
                        # fix it up in the routing tables and issue it forth before the PC16
                        unless ($parent) {
-                               if (my $nl = $pc19list{$ncall}) {
+                               my $nl = $pc19list{$ncall};
+
+                               if ($nl && @field > 3) {                     # 3 because of the hop count!
 
                                        # this is a new (remembered) node, now attach it to me if it isn't in filtered
                                        # and we haven't disallowed it
@@ -659,8 +661,6 @@ sub normal
                                                $user->node($ncall);
                                        }
 
-                                       delete $pc19list{$ncall};             # whatever happens - it goes 
-                                       
                                        my $wantpc19 = $user->wantroutepc19;
                                        if ($wantpc19 || !defined $wantpc19) {
                                                my $new = Route->new($ncall);          # throw away
@@ -688,6 +688,7 @@ sub normal
                                                } else {
                                                        return;
                                                }
+                                               delete $pc19list{$ncall};
                                        }
                                } else {
                                        dbg("PCPROT: Node $ncall not in config") if isdbg('chanerr');