From e8a2cf6b753014d56bcb5fda3924178d7c085424 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 16 Mar 2020 22:59:15 +0000 Subject: parse all licenses listed in the catalogue git-svn-id: svn://tug.org/texlive/trunk@54367 c570f23f-e606-0410-a88d-b1316a301751 --- Master/tlpkg/TeXLive/TeXCatalogue.pm | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'Master/tlpkg/TeXLive') diff --git a/Master/tlpkg/TeXLive/TeXCatalogue.pm b/Master/tlpkg/TeXLive/TeXCatalogue.pm index 2666c17629e..1d370713aca 100644 --- a/Master/tlpkg/TeXLive/TeXCatalogue.pm +++ b/Master/tlpkg/TeXLive/TeXCatalogue.pm @@ -81,7 +81,17 @@ sub initialize { $self->{'name'} = $parser->findvalue("/entry/name")->value(); $self->{'caption'} = beautify($parser->findvalue("/entry/caption")->value()); $self->{'description'} = beautify($parser->findvalue("/entry/description")->value()); - $self->{'license'} = $parser->findvalue('/entry/license/@type')->value(); + # there can be multiple entries of licenses, collected them all + # into one string + my $licset = $parser->find('/entry/license'); + my @liclist; + foreach my $node ($licset->get_nodelist) { + my $lictype = $parser->find('./@type',$node); + push @liclist, "$lictype"; + } + $self->{'license'} = join(' ', @liclist); + # was before + # $self->{'license'} = $parser->findvalue('/entry/license/@type')->value(); $self->{'version'} = Text::Unidecode::unidecode( $parser->findvalue('/entry/version/@number')->value()); $self->{'ctan'} = $parser->findvalue('/entry/ctan/@path')->value(); -- cgit v1.2.3