summary refs log tree commit diff
diff options
context:
space:
mode:
authorMark Haines <mjark@negativecurvature.net>2015-12-14 14:39:07 +0000
committerMark Haines <mjark@negativecurvature.net>2015-12-14 14:39:07 +0000
commit60512669243987388e4f4671ddc5f6321126dd79 (patch)
treed8fb4ef07b22e4494a9daf0c00921a9f0c26ca9f
parentMerge pull request #437 from matrix-org/markjh/parallel_sync (diff)
parentCombine the prev content tests (diff)
downloadsynapse-60512669243987388e4f4671ddc5f6321126dd79.tar.xz
Merge pull request #442 from matrix-org/markjh/missing_prev_content
Check whether prev_content or prev_sender is set …
-rw-r--r--synapse/rest/client/v2_alpha/sync.py9
1 files changed, 6 insertions, 3 deletions
diff --git a/synapse/rest/client/v2_alpha/sync.py b/synapse/rest/client/v2_alpha/sync.py
index f0a637a6da..3f8ce701dc 100644
--- a/synapse/rest/client/v2_alpha/sync.py
+++ b/synapse/rest/client/v2_alpha/sync.py
@@ -354,17 +354,20 @@ class SyncRestServlet(RestServlet):
             logger.debug("Replacing %s with %s in state dict",
                          timeline_event.event_id, prev_event_id)
 
-            if prev_event_id is None:
+            prev_content = timeline_event.unsigned.get('prev_content')
+            prev_sender = timeline_event.unsigned.get('prev_sender')
+            if prev_event_id is None or not prev_content or not prev_sender:
                 del result[event_key]
             else:
                 result[event_key] = FrozenEvent({
                     "type": timeline_event.type,
                     "state_key": timeline_event.state_key,
-                    "content": timeline_event.unsigned['prev_content'],
-                    "sender": timeline_event.unsigned['prev_sender'],
+                    "content": prev_content,
+                    "sender": prev_sender,
                     "event_id": prev_event_id,
                     "room_id": timeline_event.room_id,
                 })
+
             logger.debug("New value: %r", result.get(event_key))
 
         return result