X-Git-Url: http://gb7djk.dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FDXProt.pm;h=c96d787e41ba3f27010ef46b385d72765a84e2df;hb=47158622c85b4b2ee92f60027e7ef6e1f83b0301;hp=33c69f234bd9c5b00fd516df0de2adacb79a9d3e;hpb=85ea68ecce028876ab0d60d622c1d92c95bb8747;p=spider.git diff --git a/perl/DXProt.pm b/perl/DXProt.pm index 33c69f23..c96d787e 100644 --- a/perl/DXProt.pm +++ b/perl/DXProt.pm @@ -516,7 +516,7 @@ sub handle_11 } # remember a route - RouteDB::update($_[7], $self->{call}); +# RouteDB::update($_[7], $self->{call}); # RouteDB::update($_[6], $_[7]); my @spot = Spot::prepare($_[1], $_[2], $d, $_[5], $_[6], $_[7]); @@ -652,7 +652,7 @@ sub handle_12 } elsif ($_[2] eq '*' || $_[2] eq $main::mycall) { # remember a route - RouteDB::update($_[5], $self->{call}); +# RouteDB::update($_[5], $self->{call}); # RouteDB::update($_[1], $_[5]); # ignore something that looks like a chat line coming in with sysop @@ -2086,12 +2086,12 @@ sub route unless ($dxchan) { my $rcall = RouteDB::get($call); if ($rcall) { - if ($rcall eq $self->{call}) { + if ($self && $rcall eq $self->{call}) { dbg("PCPROT: Trying to route back to source, dropped") if isdbg('chanerr'); return; } - $dxchan = DXChannel->get($call); - dbg("route: $call -> $dxchan->{call} using RouteDB" ) if isdbg('route') && $dxchan; + $dxchan = DXChannel->get($rcall); + dbg("route: $call -> $rcall using RouteDB" ) if isdbg('route') && $dxchan; } } @@ -2307,6 +2307,8 @@ sub disconnect eph_del_regex("^PC1[679].*$c"); } } + + RouteDB::delete_interface($call); # remove them from the pc19list as well while (my ($k,$v) = each %pc19list) {