diff options
Diffstat (limited to 'urpm/select.pm')
-rw-r--r-- | urpm/select.pm | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/urpm/select.pm b/urpm/select.pm index 4b6f90a8..16aa2e87 100644 --- a/urpm/select.pm +++ b/urpm/select.pm @@ -51,6 +51,16 @@ sub search_packages { ? $_ : @{[]}; } $urpm->packages_providing($v)) { + #- find the lowest value of is_arch_compat + my %compats; + push @{$compats{$_->is_arch_compat}}, $_ foreach @l; + + delete $compats{0}; #- means not compatible + #- if there are pkgs matching arch, prefer them + if (%compats) { + @l = @{$compats{min(keys %compats)}}; + } + #- we assume that if there is at least one package providing #- the resource exactly, this should be the best one; but we #- first check if one of the packages has the same name as searched. |