diff options
author | Zac Medico <zmedico@gentoo.org> | 2010-09-26 22:37:04 -0700 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2010-09-26 22:37:04 -0700 |
commit | 4511c049634c26a3235f3c2d0e519ab01f950371 (patch) | |
tree | 804f5ce2f978cad5b168055ae61baf02f286931b | |
parent | b8c77a67e0cf6348201dbdca8c58372ebb75b6f0 (diff) | |
download | portage-4511c049634c26a3235f3c2d0e519ab01f950371.tar.gz portage-4511c049634c26a3235f3c2d0e519ab01f950371.tar.bz2 portage-4511c049634c26a3235f3c2d0e519ab01f950371.zip |
Revert slot conflict behavior backtracking behavior changes from
bug #337178 and comment about reasoning for behavior.
We always mask existing_node since _select_package tries to avoid
slot conflicts when possible and therefore a conflict typically
means that existing_node was a poor choice.
-rw-r--r-- | pym/_emerge/depgraph.py | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py index 6c38806fa..54e412a50 100644 --- a/pym/_emerge/depgraph.py +++ b/pym/_emerge/depgraph.py @@ -892,10 +892,11 @@ class depgraph(object): self._add_parent_atom(pkg, parent_atom) self._process_slot_conflicts() - if pkg > existing_node: - to_be_masked = pkg - else: - to_be_masked = existing_node + # NOTE: We always mask existing_node since + # _select_package tries to avoid slot conflicts when + # possible and therefore a conflict typically means + # that existing_node was a poor choice. + to_be_masked = existing_node parent_atoms = \ self._dynamic_config._parent_atoms.get(to_be_masked, set()) @@ -904,7 +905,7 @@ class depgraph(object): if conflict_atoms: parent_atoms = conflict_atoms - if pkg.cpv == existing_node.cpv: + if pkg >= existing_node: # We only care about the parent atoms # when they trigger a downgrade. parent_atoms = set() |