diff options
-rwxr-xr-x | Master/texmf/scripts/texlive/tlmgr.pl | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/Master/texmf/scripts/texlive/tlmgr.pl b/Master/texmf/scripts/texlive/tlmgr.pl index 8b9b9ce729f..86c73c45451 100755 --- a/Master/texmf/scripts/texlive/tlmgr.pl +++ b/Master/texmf/scripts/texlive/tlmgr.pl @@ -1595,7 +1595,6 @@ sub action_update { # print deferred machine-readable lines after the header for (@addlines) { print; } - # # we have to remove all the stuff before we install other packages # to support moving of files from one package to another. # remove the packages that have disappeared: @@ -1610,7 +1609,15 @@ sub action_update { info("not removing $p due to -no-remove (removed on server)\n"); } else { &ddebug("removing package $p\n"); - my $rev = $localtlmedia->tlpdb->get_package($p)->revision; + my $pkg = $localtlmedia->tlpdb->get_package($p); + if (! $p) { + # This happened when a collection was removed by the user, + # and then renamed on the server, e.g., collection-langarab -> + # collection-langarabic; Luecking report 20 July 2009. + &ddebug(" get_package($p) failed, ignoring"); + next; + } + my $rev = $pkg->revision; if ($opts{"list"}) { if ($::machinereadable) { machine_line($p, $FLAG_REMOVE, $rev, "-", "-"); |