summary refs log tree commit diff
path: root/synapse/federation
diff options
context:
space:
mode:
authorErik Johnston <erik@matrix.org>2015-05-20 11:59:02 +0100
committerErik Johnston <erik@matrix.org>2015-05-20 11:59:02 +0100
commit20814fabdd001ee6a04efc5277d71e80fdbf5a14 (patch)
treebd9de4f8cae82e6634587c1fdd3048c84c2477eb /synapse/federation
parentEnsure event_results is a set (diff)
downloadsynapse-20814fabdd001ee6a04efc5277d71e80fdbf5a14.tar.xz
Actually fetch state for new backwards extremeties when backfilling.
Diffstat (limited to 'synapse/federation')
-rw-r--r--synapse/federation/federation_client.py6
1 files changed, 5 insertions, 1 deletions
diff --git a/synapse/federation/federation_client.py b/synapse/federation/federation_client.py
index 4b3bf97835..6febc8618c 100644
--- a/synapse/federation/federation_client.py
+++ b/synapse/federation/federation_client.py
@@ -168,7 +168,11 @@ class FederationClient(FederationBase):
         for i, pdu in enumerate(pdus):
             pdus[i] = yield self._check_sigs_and_hash(pdu)
 
-            # FIXME: We should handle signature failures more gracefully.
+        # FIXME: We should handle signature failures more gracefully.
+        pdus[:] = yield defer.gatherResults(
+            [self._check_sigs_and_hash(pdu) for pdu in pdus],
+            consumeErrors=True,
+        ).addErrback(unwrapFirstError)
 
         defer.returnValue(pdus)