Skip to content

Commit dddbcfb

Browse files
committed
fix(ffi): Align RoomList::preview_room with Client::get_room_preview_* functions.
This removes the restriction applied in the FFI layer so only invited and knocked rooms can return room previews.
1 parent ed8c1d5 commit dddbcfb

File tree

1 file changed

+1
-14
lines changed

1 file changed

+1
-14
lines changed

bindings/matrix-sdk-ffi/src/room_list.rs

Lines changed: 1 addition & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -593,27 +593,14 @@ impl RoomListItem {
593593
}
594594

595595
/// Builds a `RoomPreview` from a room list item. This is intended for
596-
/// invited or knocked rooms.
597-
///
598-
/// An error will be returned if the room is in a state other than invited
599-
/// or knocked.
596+
/// invited, knocked or banned rooms.
600597
async fn preview_room(&self, via: Vec<String>) -> Result<Arc<RoomPreview>, ClientError> {
601598
// Validate parameters first.
602599
let server_names: Vec<OwnedServerName> = via
603600
.into_iter()
604601
.map(|server| ServerName::parse(server).map_err(ClientError::from))
605602
.collect::<Result<_, ClientError>>()?;
606603

607-
// Validate internal room state.
608-
let membership = self.membership();
609-
if !matches!(membership, Membership::Invited | Membership::Knocked) {
610-
return Err(RoomListError::IncorrectRoomMembership {
611-
expected: vec![Membership::Invited, Membership::Knocked],
612-
actual: membership,
613-
}
614-
.into());
615-
}
616-
617604
// Do the thing.
618605
let client = self.inner.client();
619606
let (room_or_alias_id, mut server_names) = if let Some(alias) = self.inner.canonical_alias()

0 commit comments

Comments
 (0)