summaryrefslogtreecommitdiff
path: root/Master/tlpkg
diff options
context:
space:
mode:
authorNorbert Preining <preining@logic.at>2012-05-31 18:01:43 +0000
committerNorbert Preining <preining@logic.at>2012-05-31 18:01:43 +0000
commitfc601cee7bd140adb1136ac21a31799bc72d7244 (patch)
tree7fafec6401894cd2cd44bea994ff9b7a3c736bd7 /Master/tlpkg
parentaeb6accf2eb343657817c3485c0981e3ff46c954 (diff)
TeXCatalogue: don't stumble is XML parser dies
remove temporara texcatalogue.data and references to it git-svn-id: svn://tug.org/texlive/trunk@26741 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/tlpkg')
-rw-r--r--Master/tlpkg/TeXLive/TeXCatalogue.pm10
-rwxr-xr-xMaster/tlpkg/bin/tl-update-tlpdb9
-rw-r--r--Master/tlpkg/tlpsrc/00texlive.image.tlpsrc1
3 files changed, 10 insertions, 10 deletions
diff --git a/Master/tlpkg/TeXLive/TeXCatalogue.pm b/Master/tlpkg/TeXLive/TeXCatalogue.pm
index 34f7a7f512b..575242d19a6 100644
--- a/Master/tlpkg/TeXLive/TeXCatalogue.pm
+++ b/Master/tlpkg/TeXLive/TeXCatalogue.pm
@@ -187,7 +187,15 @@ sub initialize {
# parse all the files
foreach (glob("?/*.xml")) {
open(my $io,"<$_") or die "Cannot read $_: $!";
- my $tce = TeXLive::TeXCatalogue::Entry->new( 'ioref' => $io );
+ our $tce;
+ # the XML parser die's on malformed xml entries, so we catch
+ # that and continue, simply skipping the entry
+ eval { $tce = TeXLive::TeXCatalogue::Entry->new( 'ioref' => $io ); };
+ if ($@) {
+ printf STDERR "TeX Catalogue: cannot read $_, skipping it!\n";
+ close($io);
+ next;
+ }
close($io);
$self->{'entries'}{lc($tce->{'entry'}{'id'})} = $tce;
}
diff --git a/Master/tlpkg/bin/tl-update-tlpdb b/Master/tlpkg/bin/tl-update-tlpdb
index ac8e26aefa0..a445f490f61 100755
--- a/Master/tlpkg/bin/tl-update-tlpdb
+++ b/Master/tlpkg/bin/tl-update-tlpdb
@@ -72,8 +72,6 @@ sub main {
$opt_catalogue = "/home/httpd/html/catalogue"
- # non-working dump method:
- #$opt_catalogue = "$opt_master/texmf/scripts/texlive/var/texcatalogue.data"
if ! $opt_catalogue;
if ($opt_dry_run) {
@@ -86,13 +84,8 @@ sub main {
if (-r $opt_catalogue) {
info ("$progname: reading TeX Catalogue $opt_catalogue ...\n");
$tlc = TeXLive::TeXCatalogue->new ("location" => $opt_catalogue);
- #my $cat_str = TeXLive::TLUtils::read_file_ignore_cr ($opt_catalogue);
- #no strict "refs"; # else eval fails
- #eval $cat_str;
- #warn "$progname: tlceval: $@" if $@;
- #use strict "refs";
} else {
- tlwarn("$progname: reusing Catalogue data, since file not readable: "
+ tlwarn("$progname: reusing Catalogue data, since that is not readable: "
. "$opt_catalogue\n");
}
diff --git a/Master/tlpkg/tlpsrc/00texlive.image.tlpsrc b/Master/tlpkg/tlpsrc/00texlive.image.tlpsrc
index 54c10ef9942..fb363c09052 100644
--- a/Master/tlpkg/tlpsrc/00texlive.image.tlpsrc
+++ b/Master/tlpkg/tlpsrc/00texlive.image.tlpsrc
@@ -26,4 +26,3 @@ runpattern f texmf/doc/man/man5/Makefile
#
runpattern f texmf-dist/README
#
-runpattern f texmf/scripts/texlive/var/texcatalogue.data