commit:     7cbd04cd62c8f13ed41e07ff8bc9b7e5d5ac700b
Author:     Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Sun Dec 13 06:44:52 2015 +0000
Commit:     Zac Medico <zmedico <AT> gentoo <DOT> org>
CommitDate: Sun Dec 13 23:37:47 2015 +0000
URL:        https://gitweb.gentoo.org/proj/portage.git/commit/?id=7cbd04cd

_dep_check_composite_db._visible: verify that highest_visible matches (bug 
567686)

If the highest visible match for a package slot does not match the
required atom, then do not mask other packages in the same slot.
Bug 567686 was triggered when the highest visible match for the
package slot did not match the subslot specified by the required atom.

X-Gentoo-Bug: 567686
X-Gentoo-Bug-url: https://bugs.gentoo.org/show_bug.cgi?id=567686
Reported-by: Dennis Schridde <devurandom <AT> gmx.net>
Tested-by: Dennis Schridde <devurandom <AT> gmx.net>

 pym/_emerge/depgraph.py | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index 2169b00..fd2c771 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -9064,7 +9064,9 @@ class _dep_check_composite_db(dbapi):
                        # Note: highest_visible is not necessarily the real 
highest
                        # visible, especially when --update is not enabled, so 
use
                        # < operator instead of !=.
-                       if highest_visible is not None and pkg < 
highest_visible:
+                       if (highest_visible is not None and pkg < 
highest_visible
+                               and atom_set.findAtomForPackage(highest_visible,
+                               
modified_use=self._depgraph._pkg_use_enabled(highest_visible))):
                                return False
                elif in_graph != pkg:
                        # Mask choices for packages that would trigger a slot

Reply via email to