X-Git-Url: http://dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FDXMsg.pm;h=e27bf8022487cd12e2094ab3b4e6a0481a6b6e5c;hb=3517495c96b980bf3b9364ae2b218505b2b40582;hp=3063948a347a9af733100f54e8836a240c05134a;hpb=febdc9bd8f6cd065d217ba089fab4361e9980f35;p=spider.git diff --git a/perl/DXMsg.pm b/perl/DXMsg.pm index 3063948a..e27bf802 100644 --- a/perl/DXMsg.pm +++ b/perl/DXMsg.pm @@ -612,10 +612,17 @@ sub queue_msg # my $hnode = $uref->homenode if $uref; # $clref = Route::Node::get($hnode) if $hnode; # } - if ($clref && !grep { $clref->dxchan == $_ } DXCommandmode::get_all()) { - next if $clref->call eq $main::mycall; # i.e. it lives here - $dxchan = $clref->dxchan; - $ref->start_msg($dxchan) if $dxchan && !get_busy($dxchan->call) && $dxchan->state eq 'normal'; + if ($clref) { + my $dxc = $clref->dxchan; + if ($dxc) { + if (grep {my $dxc=$clref->dxchan; $dxc && $dxc == $_ } DXCommandmode::get_all()) { + next if $clref->call eq $main::mycall; # i.e. it lives here + $dxchan = $clref->dxchan; + $ref->start_msg($dxchan) if $dxchan && !get_busy($dxchan->call) && $dxchan->state eq 'normal'; + } + } else { + dbg('route', "Route: No dxchan for $ref->{to} " . ref($clref) ); + } } }