From ff490f6e06d4f30633c7f7e6ab1e82e15ea1292e Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Fri, 25 Jul 2008 00:12:52 +0000 Subject: Cancel prefetchers if they're the only reason the main poll loop is still running. svn path=/main/trunk/; revision=11185 --- pym/_emerge/__init__.py | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'pym/_emerge') diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py index fafc59f94..2e63e6a9e 100644 --- a/pym/_emerge/__init__.py +++ b/pym/_emerge/__init__.py @@ -9544,6 +9544,13 @@ class Scheduler(PollScheduler): remaining, state_change = self._schedule_tasks_imp() self._task_queues.merge.schedule() self._status_display.display() + + # Cancel prefetchers if they're the only reason + # the main poll loop is still running. + if self._failed_pkgs and \ + not (self._jobs or self._task_queues.merge): + self._task_queues.fetch.clear() + return remaining def _schedule_tasks_imp(self): -- cgit v1.2.3-1-g7c22