From 9c95a74d56bf80fb1f09984a9c05b16d25d320da Mon Sep 17 00:00:00 2001 From: strawberry Date: Fri, 15 Nov 2024 16:35:58 -0500 Subject: [PATCH] fix getting canonical alias server for backfill Signed-off-by: strawberry --- src/service/rooms/timeline/mod.rs | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/service/rooms/timeline/mod.rs b/src/service/rooms/timeline/mod.rs index 2faa1c40..59fc8e93 100644 --- a/src/service/rooms/timeline/mod.rs +++ b/src/service/rooms/timeline/mod.rs @@ -4,6 +4,7 @@ use std::{ cmp, collections::{BTreeMap, HashSet}, fmt::Write, + iter::once, sync::Arc, }; @@ -1076,9 +1077,20 @@ impl Service { } }); + let canonical_room_alias_server = once( + self.services + .state_accessor + .get_canonical_alias(room_id) + .await, + ) + .filter_map(Result::ok) + .map(|alias| alias.server_name().to_owned()) + .stream(); + let mut servers = room_mods .stream() .map(ToOwned::to_owned) + .chain(canonical_room_alias_server) .chain( self.services .server