From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([208.92.234.80] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.60) (envelope-from ) id 1Q05HF-0005pP-P4 for garchives@archives.gentoo.org; Thu, 17 Mar 2011 04:57:38 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 9CD541C050; Thu, 17 Mar 2011 04:57:28 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) by pigeon.gentoo.org (Postfix) with ESMTP id 6C96B1C050 for ; Thu, 17 Mar 2011 04:57:28 +0000 (UTC) Received: from pelican.gentoo.org (unknown [66.219.59.40]) (using TLSv1 with cipher ADH-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id EF6EA1B4012 for ; Thu, 17 Mar 2011 04:57:27 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by pelican.gentoo.org (Postfix) with ESMTP id 646198006A for ; Thu, 17 Mar 2011 04:57:27 +0000 (UTC) From: "Zac Medico" To: gentoo-commits@lists.gentoo.org Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Zac Medico" Message-ID: <5283edc81874fdf5ddf157c3f85032b63955ac86.zmedico@gentoo> Subject: [gentoo-commits] proj/portage:master commit in: pym/_emerge/ X-VCS-Repository: proj/portage X-VCS-Files: pym/_emerge/Scheduler.py X-VCS-Directories: pym/_emerge/ X-VCS-Committer: zmedico X-VCS-Committer-Name: Zac Medico X-VCS-Revision: 5283edc81874fdf5ddf157c3f85032b63955ac86 Date: Thu, 17 Mar 2011 04:57:27 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: quoted-printable X-Archives-Salt: X-Archives-Hash: a505fcf59aef54e309769038758d791c commit: 5283edc81874fdf5ddf157c3f85032b63955ac86 Author: David James google com> AuthorDate: Thu Mar 17 04:54:37 2011 +0000 Commit: Zac Medico gentoo org> CommitDate: Thu Mar 17 04:54:37 2011 +0000 URL: http://git.overlays.gentoo.org/gitweb/?p=3Dproj/portage.git;a= =3Dcommit;h=3D5283edc8 Update Scheduler to protect against infinite loop If we have running tasks, but we're not listening to these tasks, we're going to loop forever. So throw an exception in this case. --- pym/_emerge/Scheduler.py | 6 ++---- 1 files changed, 2 insertions(+), 4 deletions(-) diff --git a/pym/_emerge/Scheduler.py b/pym/_emerge/Scheduler.py index a1b0ae4..9215678 100644 --- a/pym/_emerge/Scheduler.py +++ b/pym/_emerge/Scheduler.py @@ -1683,15 +1683,13 @@ class Scheduler(PollScheduler): self._set_max_jobs(1) =20 while self._schedule(): - if self._poll_event_handlers: - self._poll_loop() + self._poll_loop() =20 while True: self._schedule() if not self._is_work_scheduled(): break - if self._poll_event_handlers: - self._poll_loop() + self._poll_loop() =20 def _keep_scheduling(self): return bool(not self._terminated_tasks and self._pkg_queue and \