diff options
author | Norbert Preining <preining@logic.at> | 2010-02-11 05:31:59 +0000 |
---|---|---|
committer | Norbert Preining <preining@logic.at> | 2010-02-11 05:31:59 +0000 |
commit | ce51c79c2c2f0d62a7f86a7d0e760d9c711e5dbf (patch) | |
tree | e424e53623539228b0c2a5b8815ce49d1d654f99 /Master/texmf/scripts | |
parent | 4c543b199e3cd96478f2418f805cf8c11eec1f37 (diff) |
tlmgr: fix a bug that if you had autobackup turned on and download broke
you ended up with a wrong tlpobj and no files
git-svn-id: svn://tug.org/texlive/trunk@16966 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf/scripts')
-rwxr-xr-x | Master/texmf/scripts/texlive/tlmgr.pl | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/Master/texmf/scripts/texlive/tlmgr.pl b/Master/texmf/scripts/texlive/tlmgr.pl index 4dfc37ae4a4..a11cedc2740 100755 --- a/Master/texmf/scripts/texlive/tlmgr.pl +++ b/Master/texmf/scripts/texlive/tlmgr.pl @@ -2114,6 +2114,16 @@ sub action_update { next; } + # older tlmgr forgot to clear the relocated bit when saving a tlpobj + # into the local tlpdb, although the paths were rewritten. + # We have to clear this bit otherwise the make_container calls below + # for creating an unwind container will create some rubbish + # TODO for user mode we should NOT clear this bit! + if ($tlp->relocated) { + debug("tlmgr: warn, relocated bit set for $pkg, but that is wrong!\n"); + $tlp->relocated(0); + } + if ($opts{"backup"} && !$opts{"dry-run"}) { $tlp->make_container("xz", $root, $opts{"backupdir"}, "${pkg}.r" . $tlp->revision, @@ -2155,7 +2165,8 @@ sub action_update { # of the package my $tlp = $localtlpdb->get_package($pkg); my ($s, $m, $fullname) = $tlp->make_container("tar", $root, $temp, - "__BACKUP_${pkg}.r" . $tlp->revision); + "__BACKUP_${pkg}.r" . $tlp->revision, + $tlp->relocated); if ($s <= 0) { tlwarn("\n$0: Creation of backup container of $pkg failed.\n"); tlwarn("Continuing to update other packages, please retry...\n"); |