diff options
author | Manuel Pégourié-Gonnard <mpg@elzevir.fr> | 2010-02-24 16:05:26 +0000 |
---|---|---|
committer | Manuel Pégourié-Gonnard <mpg@elzevir.fr> | 2010-02-24 16:05:26 +0000 |
commit | 279a3efa74f8b66c4a46e679bc9d2c2e9cd44a39 (patch) | |
tree | d7b273584ae1eff09ea5392712b5c99e20948f25 /Master/tlpkg/TeXLive/TLPOBJ.pm | |
parent | 9f9e22a8e9bb9531b962befecffd94d254cd054e (diff) |
Avoid loosing docfiledata when relocating packages.
git-svn-id: svn://tug.org/texlive/trunk@17183 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/tlpkg/TeXLive/TLPOBJ.pm')
-rw-r--r-- | Master/tlpkg/TeXLive/TLPOBJ.pm | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/Master/tlpkg/TeXLive/TLPOBJ.pm b/Master/tlpkg/TeXLive/TLPOBJ.pm index 877ab312a00..b867ab7b4a0 100644 --- a/Master/tlpkg/TeXLive/TLPOBJ.pm +++ b/Master/tlpkg/TeXLive/TLPOBJ.pm @@ -467,6 +467,14 @@ sub cancel_reloc_prefix { my @srcfiles = $self->srcfiles; for (@srcfiles) { s:^$RelocPrefix/:$RelocTree/:; } $self->srcfiles(@srcfiles); + # docfiledata needs to be adapted too + my $data = $self->docfiledata; + my %newdata; + while (my ($k, $v) = each %$data) { + $k =~ s:^$RelocPrefix/:$RelocTree/:; + $newdata{$k} = $v; + } + $self->docfiledata(%newdata); # if there are bin files they have definitely NOT the # texmf-dist prefix, so we cannot cancel it anyway } @@ -482,6 +490,14 @@ sub cancel_common_texmf_tree { my @srcfiles = $self->srcfiles; for (@srcfiles) { s:^$RelocTree/:$RelocPrefix/:; } $self->srcfiles(@srcfiles); + # docfiledata needs to be adapted too + my $data = $self->docfiledata; + my %newdata; + while (my ($k, $v) = each %$data) { + $k =~ s:^$RelocTree/:$RelocPrefix/:; + $newdata{$k} = $v; + } + $self->docfiledata(%newdata); # if there are bin files they have definitely NOT the # texmf-dist prefix, so we cannot cancel it anyway } |