aboutsummaryrefslogtreecommitdiffstats
path: root/Rpmdrake
diff options
context:
space:
mode:
authorThierry Vignaud <tv@mandriva.org>2008-03-20 13:24:18 +0000
committerThierry Vignaud <tv@mandriva.org>2008-03-20 13:24:18 +0000
commit1ca72725b8f355592a64e42e9ad4d9e29caf5c0c (patch)
tree31e909112c840a2581b4895c94a58355198095d8 /Rpmdrake
parentc996e3ace7932d565b32a56f6035e86989d913e6 (diff)
downloadrpmdrake-1ca72725b8f355592a64e42e9ad4d9e29caf5c0c.tar
rpmdrake-1ca72725b8f355592a64e42e9ad4d9e29caf5c0c.tar.gz
rpmdrake-1ca72725b8f355592a64e42e9ad4d9e29caf5c0c.tar.bz2
rpmdrake-1ca72725b8f355592a64e42e9ad4d9e29caf5c0c.tar.xz
rpmdrake-1ca72725b8f355592a64e42e9ad4d9e29caf5c0c.zip
(build_tree) actually restrict "by_leaves" view to current mode (#39090)
Diffstat (limited to 'Rpmdrake')
-rw-r--r--Rpmdrake/gui.pm4
1 files changed, 3 insertions, 1 deletions
diff --git a/Rpmdrake/gui.pm b/Rpmdrake/gui.pm
index 556895cc..2a54f880 100644
--- a/Rpmdrake/gui.pm
+++ b/Rpmdrake/gui.pm
@@ -854,8 +854,10 @@ or you already installed all of them."));
by_selection => sub { sort { $pkgs->{$b->[0]}{selected} <=> $pkgs->{$a->[0]}{selected}
|| uc($a->[0]) cmp uc($b->[0]) } @_ },
by_leaves => sub {
+ # inlining part of MDK::Common::Data::difference2():
+ my %l; @l{map { $_->[0] } @_} = ();
my $pkgs_times = 'rpm -q --qf "%{name}-%{version}-%{release}.%{arch} %{installtime}\n" `urpmi_rpm-find-leaves`';
- sort { $b->[1] <=> $a->[1] } grep { exists $pkgs->{$_->[0]} } map { chomp; [ split ] } run_rpm($pkgs_times);
+ sort { $b->[1] <=> $a->[1] } grep { exists $l{$_->[0]} } map { chomp; [ split ] } run_rpm($pkgs_times);
},
flat => sub { no locale; sort { uc($a->[0]) cmp uc($b->[0]) } @_ },
by_medium => sub { sort { $a->[2] <=> $b->[2] || uc($a->[0]) cmp uc($b->[0]) } @_ },