aboutsummaryrefslogtreecommitdiffstats
path: root/Rpmdrake
diff options
context:
space:
mode:
authorThierry Vignaud <tv@mandriva.org>2008-03-10 14:10:06 +0000
committerThierry Vignaud <tv@mandriva.org>2008-03-10 14:10:06 +0000
commitd24185353c074609f9d57265bd82ec14195a1f92 (patch)
treef05a1d43d5e15ccb34b3d1bce8f3f7e7e038712a /Rpmdrake
parent0fe23d6e3bc14524a9c89bcb80c8882da5fb6f8f (diff)
downloadrpmdrake-d24185353c074609f9d57265bd82ec14195a1f92.tar
rpmdrake-d24185353c074609f9d57265bd82ec14195a1f92.tar.gz
rpmdrake-d24185353c074609f9d57265bd82ec14195a1f92.tar.bz2
rpmdrake-d24185353c074609f9d57265bd82ec14195a1f92.tar.xz
rpmdrake-d24185353c074609f9d57265bd82ec14195a1f92.zip
- MandrivaUpdate:
o faster startup if there're priority updates o only list priority updates if existing
Diffstat (limited to 'Rpmdrake')
-rw-r--r--Rpmdrake/pkg.pm9
1 files changed, 8 insertions, 1 deletions
diff --git a/Rpmdrake/pkg.pm b/Rpmdrake/pkg.pm
index 365965d6..892d0968 100644
--- a/Rpmdrake/pkg.pm
+++ b/Rpmdrake/pkg.pm
@@ -451,7 +451,7 @@ sub get_pkgs {
# list of pure updates (w/o those matching /etc/urpmi/skip.list but with their deps):
my @requested_strict;
- if ($probe_only_for_updates) {
+ if ($probe_only_for_updates && !$need_restart) {
@requested_strict = sort map {
urpm_name($_);
} $urpm->resolve_requested($db, $state, $requested, callback_choices => \&Rpmdrake::gui::callback_choices);
@@ -466,6 +466,13 @@ sub get_pkgs {
}
}
+ if ($probe_only_for_updates && $need_restart) {
+ @requested_strict = map { scalar $_->fullname } @{$urpm->{depslist}}[keys %{$state->{selected}}];
+ # drop non priority updates:
+ undef @requested;
+ }
+
+
# list updates including skiped ones + their deps in MandrivaUpdate:
@requested = uniq(@requested, @requested_strict) if $probe_only_for_updates;