summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--urpm/select.pm7
1 files changed, 4 insertions, 3 deletions
diff --git a/urpm/select.pm b/urpm/select.pm
index 2273ffe1..83798f24 100644
--- a/urpm/select.pm
+++ b/urpm/select.pm
@@ -147,15 +147,16 @@ sub _search_packages {
if (!$options{fuzzy}) {
#- try to search through provides.
- if (my @l = map {
+ my @l = map {
$_
&& ($options{src} ? $_->arch eq 'src' : $_->is_arch_compat)
&& ($options{use_provides} || $_->name eq $v)
&& defined($_->id)
&& (!$urpm->{searchmedia} || pkg_in_searchmedia($urpm, $_))
? $_ : @{[]};
- } $urpm->packages_providing($v))
- {
+ } $urpm->packages_providing($v);
+
+ if (@l) {
$exact{$v} = _search_packages_keep_best($v, \@l, $options{all});
next;
}