Fix EditablePackageSet.update() to create Atom instances when necessary.
authorZac Medico <zmedico@gentoo.org>
Sun, 1 Jun 2008 01:27:21 +0000 (01:27 -0000)
committerZac Medico <zmedico@gentoo.org>
Sun, 1 Jun 2008 01:27:21 +0000 (01:27 -0000)
svn path=/main/trunk/; revision=10525

pym/portage/sets/base.py

index 416626320e97402e25c6ff713fd549a4e4dcc7df..717b163222345c91f82953fc6d60d3d1efe9c2d0 100644 (file)
@@ -158,11 +158,15 @@ class EditablePackageSet(PackageSet):
                modified = False
                normal_atoms = []
                for a in atoms:
-                       if isvalidatom(a):
-                               normal_atoms.append(a)
-                       else:
-                               modified = True
-                               self._nonatoms.add(a)
+                       if not isinstance(a, Atom):
+                               try:
+                                       a = Atom(a)
+                               except InvalidAtom:
+                                       modified = True
+                                       self._nonatoms.add(a)
+                                       continue
+                       normal_atoms.append(a)
+
                if normal_atoms:
                        modified = True
                        self._atoms.update(normal_atoms)