summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2008-07-05 23:17:01 +0000
committerZac Medico <zmedico@gentoo.org>2008-07-05 23:17:01 +0000
commitc8ffb71fe978126ed9a3e7380bcd75e6daf44f7a (patch)
treebd2dc3a7a7d58f5bf813d35b369d86a9a36c6aec
parenteb296c82de1fc38a81323928b2ce482b627b43c8 (diff)
downloadportage-c8ffb71fe978126ed9a3e7380bcd75e6daf44f7a.tar.gz
portage-c8ffb71fe978126ed9a3e7380bcd75e6daf44f7a.tar.bz2
portage-c8ffb71fe978126ed9a3e7380bcd75e6daf44f7a.zip
* Fix AsynchronousTask.poll() to call _wait_hook() when necessary.
* Use the default poll() and cancel() implementations for BinpkgVerifier. svn path=/main/trunk/; revision=10947
-rw-r--r--pym/_emerge/__init__.py11
1 files changed, 4 insertions, 7 deletions
diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py
index d25358faa..0665701f7 100644
--- a/pym/_emerge/__init__.py
+++ b/pym/_emerge/__init__.py
@@ -1467,6 +1467,8 @@ class AsynchronousTask(SlotObject):
return self.returncode is None
def poll(self):
+ if self.returncode is not None:
+ self._wait_hook()
return self.returncode
def wait(self):
@@ -1474,7 +1476,8 @@ class AsynchronousTask(SlotObject):
return self.returncode
def cancel(self):
- pass
+ self.cancelled = True
+ self.wait()
def addExitListener(self, f):
"""
@@ -2619,12 +2622,6 @@ class BinpkgVerifier(AsynchronousTask):
self.returncode = rval
- def cancel(self):
- self.cancelled = True
-
- def poll(self):
- return self.returncode
-
class BinpkgExtractorAsync(SpawnProcess):
__slots__ = ("image_dir", "pkg", "pkg_path")