aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--NEWS1
-rw-r--r--Rpmdrake/gui.pm4
2 files changed, 4 insertions, 1 deletions
diff --git a/NEWS b/NEWS
index 4de77c5d..d6c88c2d 100644
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,5 @@
- rpmdrake:
+ o actually restrict "by_leaves" view to current mode (#39090)
o fix sorting in "by_source" view
Version 4.9.5 - 19 March 2008, Thierry Vignaud
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]) } @_ },