aboutsummaryrefslogtreecommitdiffstats
path: root/Rpmdrake
diff options
context:
space:
mode:
authorThierry Vignaud <tv@mandriva.org>2007-03-06 11:23:35 +0000
committerThierry Vignaud <tv@mandriva.org>2007-03-06 11:23:35 +0000
commit5f68184dfdbcc983ab3ce12421263b43088d0322 (patch)
tree67bfc49d89f1b3dc6e2ef92f9739a636909a2885 /Rpmdrake
parent47599fa040a2dd8efd8d1ba80326de221d89e68c (diff)
downloadrpmdrake-5f68184dfdbcc983ab3ce12421263b43088d0322.tar
rpmdrake-5f68184dfdbcc983ab3ce12421263b43088d0322.tar.gz
rpmdrake-5f68184dfdbcc983ab3ce12421263b43088d0322.tar.bz2
rpmdrake-5f68184dfdbcc983ab3ce12421263b43088d0322.tar.xz
rpmdrake-5f68184dfdbcc983ab3ce12421263b43088d0322.zip
(perform_installation) fix removing packages (#29070) by creating a special
transaction for removing them if we're not installing anything: transaction creator won't care about them
Diffstat (limited to 'Rpmdrake')
-rwxr-xr-xRpmdrake/pkg.pm3
1 files changed, 3 insertions, 0 deletions
diff --git a/Rpmdrake/pkg.pm b/Rpmdrake/pkg.pm
index d6a3a6e9..84572fde 100755
--- a/Rpmdrake/pkg.pm
+++ b/Rpmdrake/pkg.pm
@@ -484,6 +484,9 @@ sub perform_installation { #- (partially) duplicated from /usr/sbin/urpmi :-(
@{$urpm->{ask_remove}} = sort urpm::select::removed_packages($urpm, $urpm->{state});
my @to_remove = grep { $_ } map { if_($pkgs->{$_}{selected}, $pkgs->{$_}{urpm_name}) } keys %$pkgs;
+ # select packages to uninstall for !update mode:
+ perform_removal($urpm, $pkgs) if !$probe_only_for_updates;
+
my $r = join "\n", urpm::select::translate_why_removed($urpm, $urpm->{state}, @to_remove);
my $install_count = int(@pkgs);