1
0
Fork 0
mirror of https://gitlab.com/famedly/conduit.git synced 2025-09-05 18:41:00 +00:00

fix: Fallback to user display name, if room name is not set

This commit is contained in:
Jakub Pieńkowski 2025-07-08 23:04:40 +00:00
parent 7ddd32aeff
commit cfd12b9d88

View file

@ -186,6 +186,7 @@ pub async fn create_room_route(
content content
} }
}; };
let displayname = services().users.displayname(sender_user)?;
// Validate creation content // Validate creation content
let de_result = serde_json::from_str::<CanonicalJsonObject>( let de_result = serde_json::from_str::<CanonicalJsonObject>(
@ -229,7 +230,7 @@ pub async fn create_room_route(
event_type: TimelineEventType::RoomMember, event_type: TimelineEventType::RoomMember,
content: to_raw_value(&RoomMemberEventContent { content: to_raw_value(&RoomMemberEventContent {
membership: MembershipState::Join, membership: MembershipState::Join,
displayname: services().users.displayname(sender_user)?, displayname: displayname.clone(),
avatar_url: services().users.avatar_url(sender_user)?, avatar_url: services().users.avatar_url(sender_user)?,
is_direct: Some(body.is_direct), is_direct: Some(body.is_direct),
third_party_invite: None, third_party_invite: None,
@ -424,7 +425,14 @@ pub async fn create_room_route(
} }
// 7. Events implied by name and topic // 7. Events implied by name and topic
if let Some(name) = &body.name { let name = if body.name.is_some() {
&body.name
} else if displayname.is_some() {
&displayname
} else {
&None
};
if let Some(name) = name {
services() services()
.rooms .rooms
.timeline .timeline