projects
/
spider.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix msg aging
[spider.git]
/
perl
/
DXUtil.pm
diff --git
a/perl/DXUtil.pm
b/perl/DXUtil.pm
index ed714fe82c11b0862ef8d7051b4349e1e66f81d6..219e9f3bed6c3cdff7fdb1601eb1308c7e4be21e 100644
(file)
--- a/
perl/DXUtil.pm
+++ b/
perl/DXUtil.pm
@@
-17,7
+17,7
@@
use strict;
use vars qw($VERSION $BRANCH);
$VERSION = sprintf( "%d.%03d", q$Revision$ =~ /(\d+)\.(\d+)/ );
use vars qw($VERSION $BRANCH);
$VERSION = sprintf( "%d.%03d", q$Revision$ =~ /(\d+)\.(\d+)/ );
-$BRANCH = sprintf( "%d.%03d", q$Revision$ =~ /\d+\.\d+\.(\d+)\.(\d+)/
) || 0
;
+$BRANCH = sprintf( "%d.%03d", q$Revision$ =~ /\d+\.\d+\.(\d+)\.(\d+)/
|| (0,0))
;
$main::build += $VERSION;
$main::branch += $BRANCH;
$main::build += $VERSION;
$main::branch += $BRANCH;
@@
-149,6
+149,7
@@
sub promptf
$dd->Terse(1);
$dd->Quotekeys(0);
$value = $dd->Dumpxs;
$dd->Terse(1);
$dd->Quotekeys(0);
$value = $dd->Dumpxs;
+ $value =~ s/([\r\n\t])/sprintf("%%%02X", ord($1))/eg;
}
$prompt = sprintf "%15s: %s", $prompt, $value;
return ($priv, $prompt);
}
$prompt = sprintf "%15s: %s", $prompt, $value;
return ($priv, $prompt);
@@
-165,7
+166,7
@@
sub phex
sub parray
{
my $ref = shift;
sub parray
{
my $ref = shift;
- return
join(', ', @{$ref})
;
+ return
ref $ref ? join(', ', @{$ref}) : $ref
;
}
# take the arg as an array reference and print as a list of pairs
}
# take the arg as an array reference and print as a list of pairs
@@
-340,14
+341,15
@@
sub unpad
# check that a field only has callsign characters in it
sub is_callsign
{
# check that a field only has callsign characters in it
sub is_callsign
{
- return $_[0] =~ /^(?:[A-Z]{1,2}\d+|\d[A-Z]\d+)[A-Z]{1,3}(?:-\d{1,2}|\/(?:[A-Z]{1,2}\d{0,2}|\d[A-Z]\d{0,2}))?$/;
+ return $_[0] =~ /^(?:[A-Z]{1,2}\d+|\d[A-Z]
{1,2}
\d+)[A-Z]{1,3}(?:-\d{1,2}|\/(?:[A-Z]{1,2}\d{0,2}|\d[A-Z]\d{0,2}))?$/;
}
# check that a PC protocol field is valid text
sub is_pctext
{
}
# check that a PC protocol field is valid text
sub is_pctext
{
- return undef if $_[0] =~ /[\x00-\x08\x0a-\x1f\xf0-\xff]/;
- return $_[0];
+ return undef unless length $_[0];
+ return undef if $_[0] =~ /[\x00-\x08\x0a-\x1f\x80-\x9f]/;
+ return 1;
}
# check that a PC prot flag is fairly valid (doesn't check the difference between 1/0 and */-)
}
# check that a PC prot flag is fairly valid (doesn't check the difference between 1/0 and */-)
@@
-371,7
+373,7
@@
sub is_digits
# does it look like a qra locator?
sub is_qra
{
# does it look like a qra locator?
sub is_qra
{
- return $_[0] =~ /^[A-
Za-z][A-Za-z]\d\d[A-Za-z][A-Za-z]$/o
;
+ return $_[0] =~ /^[A-
Ra-r][A-Ra-r]\d\d[A-Xa-x][A-Xa-x]$/
;
}
# does it look like a valid lat/long
}
# does it look like a valid lat/long