depclean: account for more masks
authorZac Medico <zmedico@gentoo.org>
Sun, 2 Jan 2011 21:10:42 +0000 (13:10 -0800)
committerZac Medico <zmedico@gentoo.org>
Sun, 2 Jan 2011 21:10:42 +0000 (13:10 -0800)
Account for packages with masks (like KEYWORDS masks) that are usually
ignored in visibility checks for installed packages, in order to
handle cases like bug #350285.

pym/_emerge/depgraph.py

index a1109444804218482c9ebc008a9f2c20403bf847..2ab027cfac5277587a2d30d846d06e9ceeb34560 100644 (file)
@@ -5426,7 +5426,12 @@ class _dep_check_composite_db(dbapi):
                                arg = None
                        if arg:
                                return False
-               if pkg.installed and not self._depgraph._pkg_visibility_check(pkg):
+               if pkg.installed and \
+                       (pkg.masks or not self._depgraph._pkg_visibility_check(pkg)):
+                       # Account for packages with masks (like KEYWORDS masks)
+                       # that are usually ignored in visibility checks for
+                       # installed packages, in order to handle cases like
+                       # bug #350285.
                        return False
                in_graph = self._depgraph._dynamic_config._slot_pkg_map[
                        self._root].get(pkg.slot_atom)