diff options
author | Norbert Preining <preining@logic.at> | 2018-10-04 14:15:15 +0000 |
---|---|---|
committer | Norbert Preining <preining@logic.at> | 2018-10-04 14:15:15 +0000 |
commit | 19eb4e17edead71e12a2bef6d36357a1df1d48c3 (patch) | |
tree | 4d5683d3aafeb1b017313679adbd887a296f84f3 | |
parent | 941c5c0a3621eb3ed5725e6f2e7f528a99cfc237 (diff) |
fix parsing error of docfile data, github issue 2
git-svn-id: svn://tug.org/texlive/trunk@48828 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r-- | Master/tlpkg/TeXLive/TLPOBJ.pm | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/Master/tlpkg/TeXLive/TLPOBJ.pm b/Master/tlpkg/TeXLive/TLPOBJ.pm index 88aef34b345..fee7b630025 100644 --- a/Master/tlpkg/TeXLive/TLPOBJ.pm +++ b/Master/tlpkg/TeXLive/TLPOBJ.pm @@ -119,16 +119,17 @@ sub from_fh { # do manual parsing # this is not optimal, but since we support only two tags there # are not so many cases - if ($rest =~ m/^details="(.*)"\s*$/) { - $self->{'docfiledata'}{$f}{'details'} = $1; - } elsif ($rest =~ m/^language="(.*)"\s*$/) { - $self->{'docfiledata'}{$f}{'language'} = $1; - } elsif ($rest =~ m/^language="(.*)"\s+details="(.*)"\s*$/) { + # Warning: need tp check the double cases first!!! + if ($rest =~ m/^language="(.*)"\s+details="(.*)"\s*$/) { $self->{'docfiledata'}{$f}{'details'} = $2; $self->{'docfiledata'}{$f}{'language'} = $1; } elsif ($rest =~ m/^details="(.*)"\s+language="(.*)"\s*$/) { $self->{'docfiledata'}{$f}{'details'} = $1; $self->{'docfiledata'}{$f}{'language'} = $2; + } elsif ($rest =~ m/^details="(.*)"\s*$/) { + $self->{'docfiledata'}{$f}{'details'} = $1; + } elsif ($rest =~ m/^language="(.*)"\s*$/) { + $self->{'docfiledata'}{$f}{'language'} = $1; } else { tlwarn("$0: Unparsable tagging in TLPDB line: $line\n"); } |