Skip to content
Snippets Groups Projects
Commit 878dcd71 authored by 🥺's avatar 🥺 :transgender_flag: Committed by 🥺
Browse files

fix invalid database code for servers_invite_via

parent 59ba3e31
No related branches found
No related tags found
No related merge requests found
......@@ -1597,6 +1597,8 @@ async fn remote_leave_room(user_id: &UserId, room_id: &RoomId) -> Result<()> {
HashSet::from_iter,
);
debug!("servers in remote_leave_room: {servers:?}");
for remote_server in servers {
let make_leave_response = services()
.sending
......
......@@ -6,6 +6,7 @@
serde::Raw,
OwnedRoomId, OwnedServerName, OwnedUserId, RoomId, ServerName, UserId,
};
use tracing::error;
use crate::{
database::KeyValueDatabase,
......@@ -589,13 +590,16 @@ fn is_left(&self, user_id: &UserId, room_id: &RoomId) -> Result<bool> {
#[tracing::instrument(skip(self))]
fn servers_invite_via(&self, room_id: &RoomId) -> Result<Option<Vec<OwnedServerName>>> {
let room_id = room_id.as_bytes().to_vec();
let mut key = room_id.as_bytes().to_vec();
key.push(0xFF);
self.roomid_inviteviaservers
.get(&room_id)?
.get(&key)?
.map(|servers| {
let state = serde_json::from_slice(&servers)
.map_err(|_| Error::bad_database("Invalid state in userroomid_leftstate."))?;
let state = serde_json::from_slice(&servers).map_err(|e| {
error!("Invalid state in userroomid_leftstate: {e}");
Error::bad_database("Invalid state in userroomid_leftstate.")
})?;
Ok(state)
})
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment