summaryrefslogtreecommitdiff
path: root/Master
diff options
context:
space:
mode:
Diffstat (limited to 'Master')
-rwxr-xr-xMaster/texmf/scripts/texlive/tlmgr.pl4
-rw-r--r--Master/tlpkg/TeXLive/TLMedia.pm2
-rw-r--r--Master/tlpkg/TeXLive/TLPOBJ.pm10
3 files changed, 12 insertions, 4 deletions
diff --git a/Master/texmf/scripts/texlive/tlmgr.pl b/Master/texmf/scripts/texlive/tlmgr.pl
index f7921f00274..250d09bc6b1 100755
--- a/Master/texmf/scripts/texlive/tlmgr.pl
+++ b/Master/texmf/scripts/texlive/tlmgr.pl
@@ -223,7 +223,7 @@ sub remove_package {
rmdir $entry;
}
$localtlpdb->remove_package($pkg);
- merge_into(\%ret, $tlp->make_return_hash_from_executes);
+ merge_into(\%ret, $tlp->make_return_hash_from_executes("disable"));
# remove those bin dependencies .ARCH
foreach my $d ($tlp->depends) {
if ($d eq "$pkg.ARCH") {
@@ -495,7 +495,7 @@ sub action_restore {
my $tlpobj = TeXLive::TLPOBJ->new;
$tlpobj->from_file($localtlpdb->root . "/tlpkg/tlpobj/$pkg.tlpobj");
$localtlpdb->add_tlpobj($tlpobj);
- $ret = $localtlpdb->get_package($pkg)->make_return_hash_from_executes;
+ $ret = $localtlpdb->get_package($pkg)->make_return_hash_from_executes("enable");
$localtlpdb->save;
}
} else {
diff --git a/Master/tlpkg/TeXLive/TLMedia.pm b/Master/tlpkg/TeXLive/TLMedia.pm
index b9babeaed1d..7ac2901f415 100644
--- a/Master/tlpkg/TeXLive/TLMedia.pm
+++ b/Master/tlpkg/TeXLive/TLMedia.pm
@@ -191,7 +191,7 @@ sub install_package {
$totlpdb->save;
# compute the return value
my %ret;
- merge_into(\%ret, $tlpobj->make_return_hash_from_executes);
+ merge_into(\%ret, $tlpobj->make_return_hash_from_executes("enable"));
# now install all the depends if they are not already present
if (!$nodepends) {
foreach my $d ($tlpobj->depends) {
diff --git a/Master/tlpkg/TeXLive/TLPOBJ.pm b/Master/tlpkg/TeXLive/TLPOBJ.pm
index e5927f358ac..f9fa7942b3c 100644
--- a/Master/tlpkg/TeXLive/TLPOBJ.pm
+++ b/Master/tlpkg/TeXLive/TLPOBJ.pm
@@ -789,6 +789,10 @@ sub allbinfiles {
sub make_return_hash_from_executes {
my $self = shift;
+ my $type = shift;
+ if (!defined($type) || (($type ne "enable") && ($type ne "disable"))) {
+ die "type for make_return_hash_from_executes must be either enable or disable";
+ }
my %ret;
my (@maps, @formats, @dats);
if ($self->runfiles) {
@@ -802,7 +806,11 @@ sub make_return_hash_from_executes {
}
foreach my $e ($self->executes) {
if ($e =~ m/^add((Mixed)?Map)\s+([^\s]+)\s*$/) {
- push @maps, "enable $1=$3";
+ if ($type eq "enable") {
+ push @maps, "enable $1=$3";
+ } else {
+ push @maps, "disable $3";
+ }
} elsif ($e =~ m/^BuildFormat\s+([^\s]+)\s*$/) {
push @formats, $1;
} elsif ($e =~ m/^BuildLanguageDat\s+([^\s]+)\s*$/) {