diff options
author | Ian Jackson <ijackson@chiark.greenend.org.uk> | 2012-01-25 21:51:03 +0000 |
---|---|---|
committer | Ian Jackson <ijackson@chiark.greenend.org.uk> | 2012-01-25 23:04:37 +0000 |
commit | 1987c934200d2f253320fc7b2c1c05827c9bc9cd (patch) | |
tree | c65be6c4a6ec46f42851dd9fbd013a92b6d1feb7 /update-xfonts-traditional | |
parent | bd7891126edbe8500e813f10a78082b27156faef (diff) |
tolerate pcf2bdf crashing
Diffstat (limited to 'update-xfonts-traditional')
-rwxr-xr-x | update-xfonts-traditional | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/update-xfonts-traditional b/update-xfonts-traditional index 2e8c0d7..63e9040 100755 --- a/update-xfonts-traditional +++ b/update-xfonts-traditional @@ -23,6 +23,7 @@ our $verbose=0; our $reportfh; our $foundryinfo; our %props; +our $tolerate_bad_fonts=1; our $wanted_parallel; sub reportloaded { @@ -259,6 +260,15 @@ sub processpcfgz ($$$$) { return !$st || $ch->{SigOK}{($st & ~128)}; }; + if ($tolerate_bad_fonts && + $r eq 'no bdf data' && + $st_isok->($ch{'gunzip'}) && + ($ch{'pcf2bdf'}{St} & ~128) == 6) + { + $r = "pcf2bdf failed ($ch{'pcf2bdf'}{St})"; + print STDERR "warning: $r: skipping $inpcfgz\n"; + $ch{'pcf2bdf'}{SigOK}{6} = 1; + } foreach my $ch (@children) { if (!$st_isok->($ch)) { die "update-xfonts-traditional:". @@ -443,6 +453,7 @@ our (@options)=( 'share-dir=s' => \$sharedir, 'verbose|v+' => \$verbose, 'j|parallel=i' => \$wanted_parallel, + 'tolerate-bad-fonts!' => \$tolerate_bad_fonts, ); sub define_mode ($$) { |