Fix loop logic some more for bug #252572. (trunk r12349)
authorZac Medico <zmedico@gentoo.org>
Sat, 27 Dec 2008 18:27:19 +0000 (18:27 -0000)
committerZac Medico <zmedico@gentoo.org>
Sat, 27 Dec 2008 18:27:19 +0000 (18:27 -0000)
svn path=/main/branches/2.1.6/; revision=12354

pym/_emerge/__init__.py

index ba4c848d99c974e01a56ca425e1ae8c62b07ed38..1788f2c714f1b9462dfb5622242cbdb07dd9d444 100644 (file)
@@ -6991,15 +6991,17 @@ class depgraph(object):
                                                except KeyError:
                                                        pass
                                                else:
+                                                       uninst_task = node
                                                        ignored_uninstall_tasks.add(node)
                                                        break
 
-                               # After dropping an Uninstall task, reset
-                               # the state variables for leaf node selection and
-                               # continue trying to select leaf nodes.
-                               prefer_asap = True
-                               accept_root_node = False
-                               continue
+                               if uninst_task is not None:
+                                       # After dropping an Uninstall task, reset
+                                       # the state variables for leaf node selection and
+                                       # continue trying to select leaf nodes.
+                                       prefer_asap = True
+                                       accept_root_node = False
+                                       continue
 
                        if not selected_nodes:
                                self._circular_deps_for_display = mygraph