summary refs log tree commit diff
path: root/synapse/push/httppusher.py
diff options
context:
space:
mode:
authorErik Johnston <erik@matrix.org>2016-07-31 15:30:13 +0100
committerErik Johnston <erik@matrix.org>2016-07-31 16:00:12 +0100
commitb260f92936e7e80ee9885755d608d58ffb9101ba (patch)
tree6eb55aeff2bc460a252c8963344d1da08c79fcc3 /synapse/push/httppusher.py
parentMerge pull request #958 from matrix-org/paul/SYN-738 (diff)
downloadsynapse-b260f92936e7e80ee9885755d608d58ffb9101ba.tar.xz
Ignore AlreadyCalled errors on timer cancel
Diffstat (limited to 'synapse/push/httppusher.py')
-rw-r--r--synapse/push/httppusher.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/synapse/push/httppusher.py b/synapse/push/httppusher.py
index 9a7db61220..feedb075e2 100644
--- a/synapse/push/httppusher.py
+++ b/synapse/push/httppusher.py
@@ -16,6 +16,7 @@
 from synapse.push import PusherConfigException
 
 from twisted.internet import defer, reactor
+from twisted.internet.error import AlreadyCalled, AlreadyCancelled
 
 import logging
 import push_rule_evaluator
@@ -109,7 +110,11 @@ class HttpPusher(object):
 
     def on_stop(self):
         if self.timed_call:
-            self.timed_call.cancel()
+            try:
+                self.timed_call.cancel()
+            except (AlreadyCalled, AlreadyCancelled):
+                pass
+            self.timed_call = None
 
     @defer.inlineCallbacks
     def _process(self):