some fixed
[spider.git] / perl / DXProt.pm
index 813b89ced4f407e961e9342ebf15563cfa841b51..e33488ccaf9942c5cdca015e66e0ff74f936078a 100644 (file)
@@ -607,7 +607,8 @@ sub normal
                        my $node = Route::Node::get($self->{call});
                        my @rout;
                        for ($node->nodes) {
-                               push @rout, $_->del_node;
+                               my $r = Route::Node::get($_);
+                               push @rout, $r->del_node if $r;
                        }
                        $self->route_pc21(@rout, $node);
                        $self->send_local_config();
@@ -641,6 +642,8 @@ sub normal
                                        $node->flags(Route::here($here)|Route::conf($conf));
                                        push @rout, $node;
                                } elsif ($node->call ne $call) {
+                                       next if $call eq $main::mycall || $call eq $self->{call};
+
                                        my $r = $node->add($call, $ver, Route::here($here)|Route::conf($conf));
                                        push @rout, $r if $r;
                                }
@@ -1690,7 +1693,7 @@ sub send_route
                                $routeit = adjust_hops($self, $line);  # adjust its hop count by node name
                                next unless $routeit;
                        }
-                       $self->send($routeit) unless $self->{isolate} || $self->{isolate};
+                       $self->send($routeit);
                }
        }
 }