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

fix: Include m.room.member in invite_room_state

This commit is contained in:
Jakub Pieńkowski 2025-07-10 00:26:48 +00:00
parent cfd12b9d88
commit 35b5a6174a
2 changed files with 14 additions and 11 deletions

View file

@ -702,7 +702,18 @@ pub(crate) async fn invite_helper(
&state_lock,
)?;
let invite_room_state = services().rooms.state.stripped_state(&pdu.room_id)?;
let mut invite_room_state = services().rooms.state.stripped_state(&pdu.room_id)?;
invite_room_state.push(
services()
.rooms
.state_accessor
.room_state_get(
&pdu.room_id,
&StateEventType::RoomMember,
sender_user.as_str())?
.expect("sender is already room member")
.to_stripped_state_event());
let invite_room_state = invite_room_state;
drop(state_lock);

View file

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