Revert "remove deferral.sleep's canceller, as it wasn't used anywhere and caused...
[p2pool.git] / p2pool / util / deferral.py
index 0601d39..aed3adc 100644 (file)
@@ -8,8 +8,8 @@ from twisted.internet import defer, reactor
 from twisted.python import failure, log
 
 def sleep(t):
-    d = defer.Deferred()
-    reactor.callLater(t, d.callback, None)
+    d = defer.Deferred(canceller=lambda d_: dc.cancel())
+    dc = reactor.callLater(t, d.callback, None)
     return d
 
 def run_repeatedly(f, *args, **kwargs):