Skip to content

Commit 173c19c

Browse files
author
Pavel Kardash
committed
Handle all m.room.aliases, not only first in _process_state_event too
1 parent fd43c54 commit 173c19c

File tree

2 files changed

+6
-5
lines changed

2 files changed

+6
-5
lines changed

matrix_client/room.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -454,7 +454,6 @@ def update_aliases(self):
454454
Returns:
455455
boolean: True if the aliases changed, False if not
456456
"""
457-
response = None
458457
try:
459458
response = self.client.api.get_room_state(self.room_id)
460459
except MatrixRequestError:
@@ -652,7 +651,9 @@ def _process_state_event(self, state_event):
652651
elif etype == "m.room.topic":
653652
self.topic = econtent.get("topic")
654653
elif etype == "m.room.aliases":
655-
self.aliases = econtent.get("aliases")
654+
for alias in econtent.get("aliases", []):
655+
if alias not in self.aliases:
656+
self.aliases.append(alias)
656657
elif etype == "m.room.join_rules":
657658
self.invite_only = econtent["join_rule"] == "invite"
658659
elif etype == "m.room.guest_access":

test/client_test.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ def test_state_event():
7373

7474
room.name = False
7575
room.topic = False
76-
room.aliases = False
76+
room.aliases = []
7777

7878
ev = {
7979
"type": "m.room.name",
@@ -97,12 +97,12 @@ def test_state_event():
9797

9898
ev["type"] = "m.room.aliases"
9999
room._process_state_event(ev)
100-
assert room.aliases is None
100+
assert room.aliases == []
101101

102102
aliases = ["#foo:matrix.org", "#bar:matrix.org"]
103103
ev["content"]["aliases"] = aliases
104104
room._process_state_event(ev)
105-
assert room.aliases is aliases
105+
assert room.aliases == aliases
106106

107107
# test member join event
108108
ev["type"] = "m.room.member"

0 commit comments

Comments
 (0)