Make /directory/room/<alias> handle restrictive power levels

Fixes a bug where the alias would be added, but `PUT /directory/room/<alias>`
would return a 403.
This commit is contained in:
Richard van der Hoff 2020-01-28 17:46:34 +00:00
parent b36095ae5c
commit dcd85b976d

View File

@ -151,7 +151,12 @@ class DirectoryHandler(BaseHandler):
yield self._create_association(room_alias, room_id, servers, creator=user_id) yield self._create_association(room_alias, room_id, servers, creator=user_id)
if send_event: if send_event:
yield self.send_room_alias_update_event(requester, room_id) try:
yield self.send_room_alias_update_event(requester, room_id)
except AuthError as e:
# sending the aliases event may fail due to the user not having
# permission in the room; this is permitted.
logger.info("Skipping updating aliases event due to auth error %s", e)
@defer.inlineCallbacks @defer.inlineCallbacks
def delete_association(self, requester, room_alias, send_event=True): def delete_association(self, requester, room_alias, send_event=True):