unrolled the checking in decode_input a bit
authorminima <minima>
Sun, 29 Oct 2000 12:37:11 +0000 (12:37 +0000)
committerminima <minima>
Sun, 29 Oct 2000 12:37:11 +0000 (12:37 +0000)
perl/DXChannel.pm

index 9d52d67c3a204481a220e2feac51a833efd4357b..d566c177c05f07a1ac0b76eac0419db98934010e 100644 (file)
@@ -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);
 }