Handle empty/invalid state event content in _get_initial_state()
Fixes #171
This commit is contained in:
@@ -307,14 +307,18 @@ async def _get_initial_state(evt: CommandEvent):
|
|||||||
about = None
|
about = None
|
||||||
levels = None
|
levels = None
|
||||||
for event in state:
|
for event in state:
|
||||||
if event["type"] == "m.room.name":
|
try:
|
||||||
title = event["content"]["name"]
|
if event["type"] == "m.room.name":
|
||||||
elif event["type"] == "m.room.topic":
|
title = event["content"]["name"]
|
||||||
about = event["content"]["topic"]
|
elif event["type"] == "m.room.topic":
|
||||||
elif event["type"] == "m.room.power_levels":
|
about = event["content"]["topic"]
|
||||||
levels = event["content"]
|
elif event["type"] == "m.room.power_levels":
|
||||||
elif event["type"] == "m.room.canonical_alias":
|
levels = event["content"]
|
||||||
title = title or event["content"]["alias"]
|
elif event["type"] == "m.room.canonical_alias":
|
||||||
|
title = title or event["content"]["alias"]
|
||||||
|
except KeyError:
|
||||||
|
# Some state event probably has empty content
|
||||||
|
pass
|
||||||
return title, about, levels
|
return title, about, levels
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user