X-Git-Url: http://dxcluster.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2FDXMsg.pm;h=54a2c6f3c04768f9584de08f62d879e5deb90cf4;hb=14f2cd924047e8d99aa2f5796f8f34ee80802651;hp=e66c1336e729637a92de745bf344bcd93fb09741;hpb=36bd2cf34476999d513a1ca60f6ee6c5204c3132;p=spider.git diff --git a/perl/DXMsg.pm b/perl/DXMsg.pm index e66c1336..54a2c6f3 100644 --- a/perl/DXMsg.pm +++ b/perl/DXMsg.pm @@ -1207,7 +1207,9 @@ sub import_one # first line; my $line = shift @$ref; - my @f = split /\s+/, $line; + my @f = split /\b/, $line; + @f = map {s/\s+//g; length $_ ? $_ : ()} @f; + unless (@f && $f[0] =~ /^(:?S|SP|SB|SEND)$/ ) { my $m = "invalid first line in import '$line'"; dbg($m) if isdbg('msg'); @@ -1224,16 +1226,16 @@ sub import_one ; } elsif ($notincalls && ($f eq 'RR')) { $rr = '1'; - } elsif ($f eq '@' && @f) { # this is bbs syntax, for origin - $origin = uc shift @f; + } elsif (($f =~ /^[\@\.\#\$]$/ || $f eq '.#') && @f) { # this is bbs syntax, for AT + shift @f; } elsif ($f eq '<' && @f) { # this is bbs syntax for from call $from = uc shift @f; } elsif ($f =~ /^\$/) { # this is bbs syntax for a bid next; - } elsif ($f =~ /^<\S+/) { # this is bbs syntax for from call - ($from) = $f =~ /^<(\S+)$/; - } elsif ($f =~ /^\@\S+/) { # this is bbs syntax for origin - ($origin) = $f =~ /^\@(\S+)$/; + } elsif ($f =~ /^<(\S+)/) { # this is bbs syntax for from call + $from = $1; + } elsif ($f =~ /^\$\S+/) { # this is bbs syntax for bid + ; } else { # callsign ?