diff options
-rw-r--r-- | urpm.pm | 17 | ||||
-rw-r--r-- | urpmi.spec | 6 |
2 files changed, 12 insertions, 11 deletions
@@ -1067,15 +1067,12 @@ sub search_packages { if ($options{use_provides}) { #- try to search through provides. - if (my $provide_v = $urpm->{params}{provides}{$v}) { - if (scalar(keys %$provide_v) == 1 && - $urpm->{params}{info}{$provide_v->[0]} && - defined $urpm->{params}{info}{$provide_v->[0]}{id}) { - #- we assume that if the there is only one package providing the resource exactly, - #- this should be the best one that is described. - $exact{$v} = $urpm->{params}{info}{$provide_v->[0]}{id}; - next; - } + if (my @l = grep { defined $_ } map { $_ && $_->{id} } map { $urpm->{params}{info}{$_} } + keys %{$urpm->{params}{provides}{$v} || {}}) { + #- we assume that if the there is at least one package providing the resource exactly, + #- this should be the best ones that is described. + $exact{$v} = join '|', @l; + next; } foreach (keys %{$urpm->{params}{provides}}) { @@ -1264,7 +1261,7 @@ sub filter_minimal_packages_to_upgrade { #- or we have to use synthesis file. my @synthesis = map { "$urpm->{statedir}/synthesis.$_->{hdlist}" } grep { ! $_->{ignore} } @{$urpm->{media} || []}; if (grep { ! -r $_ || ! -s $_ } @synthesis) { - $urpm->{log}(_("unable to find all synthesis file, using parsehdlist server")); + $urpm->{error}(_("unable to find all synthesis file, using parsehdlist server")); pipe INPUT, OUTPUT_CHILD; pipe INPUT_CHILD, OUTPUT; $pid = fork(); @@ -2,7 +2,7 @@ Name: urpmi Version: 2.2 -Release: 1mdk +Release: 2mdk License: GPL Source0: %{name}.tar.bz2 Source1: %{name}.logrotate @@ -129,6 +129,10 @@ rm -f /var/lib/urpmi/depslist %changelog +* Thu Dec 6 2001 François Pons <fpons@mandrakesoft.com> 2.2-2mdk +- fixed bad reference with -p. +- changed -p ... to use choice instead of mutliple packages. + * Wed Dec 5 2001 François Pons <fpons@mandrakesoft.com> 2.2-1mdk - match rpmtools-4.0. - updated help on-line and fixed options invocation. |