fix ppkg type handling in slot_conflict_handler
authorSebastian Luther <SebastianLuther@gmx.de>
Fri, 27 Aug 2010 15:57:43 +0000 (08:57 -0700)
committerZac Medico <zmedico@gentoo.org>
Fri, 27 Aug 2010 15:57:43 +0000 (08:57 -0700)
pym/_emerge/resolver/slot_collision.py

index c37c1089b576a8902c5347f9d4f7dafa697a9ffb..9c3d137950a207d04b9c2e894f65037911c65749 100644 (file)
@@ -458,12 +458,13 @@ class slot_conflict_handler(object):
 
                                if not pkg.iuse.is_valid_flag(atom.unevaluated_atom.use.required):
                                        #Missing IUSE.
+                                       #FIXME: This needs to support use dep defaults.
                                        if self.debug:
-                                               writemsg(str(pkg) + " misses need flags from IUSE." + \
+                                               writemsg(str(pkg) + " misses needed flags from IUSE." + \
                                                        " Rejecting configuration.\n", noiselevel=-1)
                                        return False
 
-                               if ppkg.installed:
+                               if not isinstance(ppkg, Package) or ppkg.installed:
                                        #We cannot assume that it's possible to reinstall the package. Do not
                                        #check if some of its atom has use.conditional
                                        violated_atom = atom.violated_conditionals(_pkg_use_enabled(pkg), \