summaryrefslogtreecommitdiffstats
path: root/pym/_emerge/Scheduler.py
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2012-02-07 11:11:50 -0800
committerZac Medico <zmedico@gentoo.org>2012-02-07 11:11:50 -0800
commite9d1125f6730c85c4b384a580da55da68338acf1 (patch)
tree79273d75e1df847a8e364376dff39f15ddead704 /pym/_emerge/Scheduler.py
parent6a94a074aa0475173a51f3f726377d4c407e986b (diff)
downloadportage-e9d1125f6730c85c4b384a580da55da68338acf1.tar.gz
portage-e9d1125f6730c85c4b384a580da55da68338acf1.tar.bz2
portage-e9d1125f6730c85c4b384a580da55da68338acf1.zip
PollScheduler: add timeout_add like glib's
This will be useful as a substitute for recursion, in order to avoid hitting the recursion limit for bug #402335.
Diffstat (limited to 'pym/_emerge/Scheduler.py')
-rw-r--r--pym/_emerge/Scheduler.py8
1 files changed, 4 insertions, 4 deletions
diff --git a/pym/_emerge/Scheduler.py b/pym/_emerge/Scheduler.py
index d09b474e1..5b56650f3 100644
--- a/pym/_emerge/Scheduler.py
+++ b/pym/_emerge/Scheduler.py
@@ -79,11 +79,9 @@ class Scheduler(PollScheduler):
_opts_no_self_update = frozenset(["--buildpkgonly",
"--fetchonly", "--fetch-all-uri", "--pretend"])
- class _iface_class(SlotObject):
+ class _iface_class(PollScheduler._sched_iface_class):
__slots__ = ("fetch",
- "output", "register", "schedule",
- "scheduleSetup", "scheduleUnpack", "scheduleYield",
- "unregister")
+ "scheduleSetup", "scheduleUnpack", "scheduleYield")
class _fetch_iface_class(SlotObject):
__slots__ = ("log_file", "schedule")
@@ -223,6 +221,8 @@ class Scheduler(PollScheduler):
scheduleSetup=self._schedule_setup,
scheduleUnpack=self._schedule_unpack,
scheduleYield=self._schedule_yield,
+ source_remove=self._unregister,
+ timeout_add=self._timeout_add,
unregister=self._unregister)
self._prefetchers = weakref.WeakValueDictionary()