Don't use modifiers that don't look valid

This commit is contained in:
Jamie Cameron
2015-02-28 16:15:37 -08:00
parent ea838d0500
commit bab827542b

View File

@@ -115,6 +115,18 @@ my ($i, $m) = @_;
$m =~ s/^\{//;
$m =~ s/\}$//;
my ($o, $w, $b) = split(/,/, $m);
if ($o !~ /^\-?\d+$/) {
# Disallowed offset
$o = 0;
}
if ($w !~ /^\d+$/) {
# Disallowed width
$w = 0;
}
if ($b !~ /^[doxXnN]$/) {
# Disallowed modifier
$b = undef;
}
$b ||= "d";
$i += $o;
$i = sprintf("%".($w ? "0".$w : "").$b, $i);