diff options
author | Pascal Rigaux <pixel@mandriva.com> | 2007-09-28 20:23:16 +0000 |
---|---|---|
committer | Pascal Rigaux <pixel@mandriva.com> | 2007-09-28 20:23:16 +0000 |
commit | 521bf96a075950392482d401a98e5c18e1472e09 (patch) | |
tree | 583f0be010cb875fb5307abdcf26ed56fc0bf109 /URPM | |
parent | 277e941bfef194a7377251697e1e9b09522c2fb0 (diff) | |
download | perl-URPM-521bf96a075950392482d401a98e5c18e1472e09.tar perl-URPM-521bf96a075950392482d401a98e5c18e1472e09.tar.gz perl-URPM-521bf96a075950392482d401a98e5c18e1472e09.tar.bz2 perl-URPM-521bf96a075950392482d401a98e5c18e1472e09.tar.xz perl-URPM-521bf96a075950392482d401a98e5c18e1472e09.zip |
- also handle promotion via obsolete for conflicts
Diffstat (limited to 'URPM')
-rw-r--r-- | URPM/Resolve.pm | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/URPM/Resolve.pm b/URPM/Resolve.pm index 0b15eda..85d4bff 100644 --- a/URPM/Resolve.pm +++ b/URPM/Resolve.pm @@ -1111,6 +1111,11 @@ sub _handle_conflict { my @packages = grep { $_->name eq $p->name } find_candidate_packages_($urpm, $need_deps, $state->{rejected}); @packages = grep { ! $_->provides_overlap($property) } @packages; + if (!@packages) { + @packages = _find_packages_obsoleting($urpm, $state, $p); + @packages = grep { ! $_->provides_overlap($property) } @packages; + } + if (@packages) { my $best = join('|', map { $_->id } @packages); $urpm->{debug_URPM}("promoting " . join('|', map { scalar $_->fullname } @packages) . " because of conflict above") if $urpm->{debug_URPM}; |