Fix 500 error when fields missing from power_levels event

If the users or events keys were missing from a power_levels event, then
we would throw 500s when trying to auth them.
This commit is contained in:
Richard van der Hoff 2017-10-17 17:05:42 +01:00
parent 7216c76654
commit c2bd177ea0

View File

@ -470,14 +470,14 @@ def _check_power_levels(event, auth_events):
("invite", None), ("invite", None),
] ]
old_list = current_state.content.get("users") old_list = current_state.content.get("users", {})
for user in set(old_list.keys() + user_list.keys()): for user in set(old_list.keys() + user_list.keys()):
levels_to_check.append( levels_to_check.append(
(user, "users") (user, "users")
) )
old_list = current_state.content.get("events") old_list = current_state.content.get("events", {})
new_list = event.content.get("events") new_list = event.content.get("events", {})
for ev_id in set(old_list.keys() + new_list.keys()): for ev_id in set(old_list.keys() + new_list.keys()):
levels_to_check.append( levels_to_check.append(
(ev_id, "events") (ev_id, "events")