crypto: Mark tracked users as changed if a sync tells us so.
parent
1d9fccdc9f
commit
6ecf46abf7
|
@ -35,7 +35,6 @@ features = ["sync", "fs"]
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
matrix-sdk-test = { version = "0.1.0", path = "../matrix_sdk_test" }
|
matrix-sdk-test = { version = "0.1.0", path = "../matrix_sdk_test" }
|
||||||
http = "0.2.1"
|
http = "0.2.1"
|
||||||
dirs = "2.0.2"
|
|
||||||
tracing-subscriber = "0.2.5"
|
tracing-subscriber = "0.2.5"
|
||||||
tempfile = "3.1.0"
|
tempfile = "3.1.0"
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
// limitations under the License.
|
// limitations under the License.
|
||||||
|
|
||||||
use std::collections::{BTreeMap, HashMap, HashSet};
|
use std::collections::{BTreeMap, HashMap, HashSet};
|
||||||
use std::convert::TryInto;
|
use std::convert::{TryFrom, TryInto};
|
||||||
use std::mem;
|
use std::mem;
|
||||||
#[cfg(feature = "sqlite-cryptostore")]
|
#[cfg(feature = "sqlite-cryptostore")]
|
||||||
use std::path::Path;
|
use std::path::Path;
|
||||||
|
@ -1404,6 +1404,20 @@ impl OlmMachine {
|
||||||
let count: u64 = one_time_key_count.map_or(0, |c| (*c).into());
|
let count: u64 = one_time_key_count.map_or(0, |c| (*c).into());
|
||||||
self.update_key_count(count);
|
self.update_key_count(count);
|
||||||
|
|
||||||
|
if let Some(device_list) = &response.device_lists {
|
||||||
|
for user_id in &device_list.changed {
|
||||||
|
let user_id = if let Ok(u) = UserId::try_from(user_id.to_owned()) {
|
||||||
|
u
|
||||||
|
} else {
|
||||||
|
continue;
|
||||||
|
};
|
||||||
|
|
||||||
|
if let Err(e) = self.mark_user_as_changed(&user_id).await {
|
||||||
|
error!("Error marking a tracked user as changed {:?}", e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
for event_result in &mut response.to_device.events {
|
for event_result in &mut response.to_device.events {
|
||||||
let event = if let Ok(e) = event_result.deserialize() {
|
let event = if let Ok(e) = event_result.deserialize() {
|
||||||
e
|
e
|
||||||
|
|
Loading…
Reference in New Issue