api/filtering: don't assume that event content will always be a dict

Signed-off-by: Patrik Oldsberg <patrik.oldsberg@ericsson.com>
pull/580/head
Patrik Oldsberg 2016-02-17 10:53:06 +01:00
parent 458782bf67
commit 536f949a1a
1 changed files with 4 additions and 1 deletions

View File

@ -198,7 +198,10 @@ class Filter(object):
sender = event.get("sender", None)
if not sender:
# Presence events have their 'sender' in content.user_id
sender = event.get("content", {}).get("user_id", None)
content = event.get("content")
# account_data has been allowed to have non-dict content, so check type first
if isinstance(content, dict):
sender = content.get("user_id")
return self.check_fields(
event.get("room_id", None),