X-Git-Url: http://dxcluster.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FDXChannel.pm;h=d566c177c05f07a1ac0b76eac0419db98934010e;hb=a91e80b479d48d5d9be339c7aa2ab8cf6621886f;hp=9d52d67c3a204481a220e2feac51a833efd4357b;hpb=15a742ea0f1983282fdff272a362555afbdb99ad;p=spider.git diff --git a/perl/DXChannel.pm b/perl/DXChannel.pm index 9d52d67c..d566c177 100644 --- a/perl/DXChannel.pm +++ b/perl/DXChannel.pm @@ -440,12 +440,16 @@ sub decode_input my $chcall = (ref $dxchan) ? $dxchan->call : "UN.KNOWN"; # the above regexp must work - if (!defined $sort || !defined $call || !defined $line || - (ref $dxchan && $call ne $chcall)) { + unless (defined $sort && defined $call && defined $line) { $data =~ s/([\x00-\x1f\x7f-\xff])/uc sprintf("%%%02x",ord($1))/eg; - dbg('chan', "DUFF Line from $chcall: $data"); + dbg('err', "DUFF Line on $chcall: $data"); return (); } + + if(ref($dxchan) && $call ne $chcall) { + dbg('err', "DUFF Line come in for $call on wrong channel $chcall" ); + return(); + } return ($sort, $call, $line); }