From 3cce30bc391b238dedc3d470892319ab8ed412a1 Mon Sep 17 00:00:00 2001 From: Pascal Rigaux Date: Fri, 6 Jul 2007 10:31:26 +0000 Subject: - urpmq o --whatrequires: fix skipping packages through provides provided by other packages, when the other package is the same pkg name (#31773) --- NEWS | 4 ++++ urpmq | 8 +++----- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/NEWS b/NEWS index 8c2f2609..14e1b7a0 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,7 @@ +- urpmq + o --whatrequires: fix skipping packages through provides provided by other + packages, when the other package is the same pkg name (#31773) + Version 4.9.27 - 18 June 2007, by Pascal "Pixel" Rigaux - urpmi.addmedia --distrib, urpmi/urpme/urpmf/urpmq --use-distrib diff --git a/urpmq b/urpmq index 41a8037a..e0ee88e7 100755 --- a/urpmq +++ b/urpmq @@ -285,11 +285,9 @@ if ($urpm::args::options{list_aliases}) { #- for all provides of package, look up what is requiring them. foreach ($pkg->provides) { if (my ($n, $s) = /^([^\s\[]*)(?:\[\*\])?\[?([^\s\]]*\s*[^\s\]]*)/) { - if (keys %{$urpm->{provides}{$n}} > 1) { - #- If more than one thing provides this requirement - #- then don't bother finding stuff - #- that needs it as it will be invalid - my @l = grep { $_ ne $pkg->name } map { $_->name } $urpm->packages_providing($n); + if (my @l = grep { $_ ne $pkg->name } map { $_->name } $urpm->packages_providing($n)) { + #- If another package provides this requirement, + #- then don't bother finding stuff that needs it as it will be invalid $urpm->{log}(sprintf "skipping package(s) requiring %s via %s, since %s is also provided by %s", $pkg->name, $n, $n, join(' ', @l)); next; } -- cgit v1.2.1