|
|
|
@ -392,6 +392,7 @@ impl Rooms { |
|
|
|
&pdu.sender, |
|
|
|
&pdu.sender, |
|
|
|
None, |
|
|
|
None, |
|
|
|
db, |
|
|
|
db, |
|
|
|
|
|
|
|
false, |
|
|
|
)?; |
|
|
|
)?; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
@ -400,6 +401,8 @@ impl Rooms { |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
self.update_joined_count(room_id)?; |
|
|
|
|
|
|
|
|
|
|
|
self.roomid_shortstatehash |
|
|
|
self.roomid_shortstatehash |
|
|
|
.insert(room_id.as_bytes(), &new_shortstatehash.to_be_bytes())?; |
|
|
|
.insert(room_id.as_bytes(), &new_shortstatehash.to_be_bytes())?; |
|
|
|
|
|
|
|
|
|
|
|
@ -1285,6 +1288,7 @@ impl Rooms { |
|
|
|
&pdu.sender, |
|
|
|
&pdu.sender, |
|
|
|
invite_state, |
|
|
|
invite_state, |
|
|
|
db, |
|
|
|
db, |
|
|
|
|
|
|
|
true, |
|
|
|
)?; |
|
|
|
)?; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
@ -2051,6 +2055,7 @@ impl Rooms { |
|
|
|
sender: &UserId, |
|
|
|
sender: &UserId, |
|
|
|
last_state: Option<Vec<Raw<AnyStrippedStateEvent>>>, |
|
|
|
last_state: Option<Vec<Raw<AnyStrippedStateEvent>>>, |
|
|
|
db: &Database, |
|
|
|
db: &Database, |
|
|
|
|
|
|
|
update_joined_count: bool, |
|
|
|
) -> Result<()> { |
|
|
|
) -> Result<()> { |
|
|
|
// Keep track what remote users exist by adding them as "deactivated" users
|
|
|
|
// Keep track what remote users exist by adding them as "deactivated" users
|
|
|
|
if user_id.server_name() != db.globals.server_name() { |
|
|
|
if user_id.server_name() != db.globals.server_name() { |
|
|
|
@ -2232,7 +2237,9 @@ impl Rooms { |
|
|
|
_ => {} |
|
|
|
_ => {} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if update_joined_count { |
|
|
|
self.update_joined_count(room_id)?; |
|
|
|
self.update_joined_count(room_id)?; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
Ok(()) |
|
|
|
Ok(()) |
|
|
|
} |
|
|
|
} |
|
|
|
@ -2269,6 +2276,7 @@ impl Rooms { |
|
|
|
user_id, |
|
|
|
user_id, |
|
|
|
last_state, |
|
|
|
last_state, |
|
|
|
db, |
|
|
|
db, |
|
|
|
|
|
|
|
true, |
|
|
|
)?; |
|
|
|
)?; |
|
|
|
} else { |
|
|
|
} else { |
|
|
|
let mutex_state = Arc::clone( |
|
|
|
let mutex_state = Arc::clone( |
|
|
|
|