diff options
-rw-r--r-- | urpm/select.pm | 7 |
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; } |