summary refs log tree commit diff
path: root/synapse
diff options
context:
space:
mode:
authorPaul "LeoNerd" Evans <paul@matrix.org>2015-12-21 18:32:23 +0000
committerPaul "LeoNerd" Evans <paul@matrix.org>2015-12-21 18:32:23 +0000
commit05c1c838f221bc778c7b27db9a20d5ff4767c4a6 (patch)
treeede2599bbde76de2c259fdefa0aa9f0b488c0888 /synapse
parentDelete all the .coverage files, including the combined .coverage (diff)
downloadsynapse-05c1c838f221bc778c7b27db9a20d5ff4767c4a6.tar.xz
Use the returned backfill events to fill in any missing auth events before reaching out a second time to fetch them
Diffstat (limited to 'synapse')
-rw-r--r--synapse/handlers/federation.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/synapse/handlers/federation.py b/synapse/handlers/federation.py
index 28f2ff68d6..8a4fc07bbf 100644
--- a/synapse/handlers/federation.py
+++ b/synapse/handlers/federation.py
@@ -346,6 +346,11 @@ class FederationHandler(BaseHandler):
             a_id for event in all_events for a_id, _ in event.auth_events
         )
 
+        for e_id in required_auth:
+            if e_id not in auth_events and e_id in event_ids:
+                auth_events[e_id] = event_map[e_id]
+            # TODO(paul): we should also inspect our local database here
+
         missing_auth = required_auth - set(auth_events)
         results = yield defer.gatherResults(
             [