fix: Fix crash when calling getUnacknowledgedRatchets for a new Jid
This commit is contained in:
parent
f68e45af26
commit
80e1b20f27
@ -446,18 +446,19 @@ class OmemoSessionManager {
|
||||
|
||||
/// Returns the list of device identifiers belonging to [jid] that are yet unacked, i.e.
|
||||
/// we have not yet received an empty OMEMO message from.
|
||||
Future<List<int>> getUnacknowledgedRatchets(String jid) async {
|
||||
final ret = List<int>.empty(growable: true);
|
||||
Future<List<int>?> getUnacknowledgedRatchets(String jid) async {
|
||||
return _lock.synchronized(() async {
|
||||
final ret = List<int>.empty(growable: true);
|
||||
final devices = _deviceMap[jid];
|
||||
if (devices == null) return null;
|
||||
|
||||
await _lock.synchronized(() async {
|
||||
final devices = _deviceMap[jid]!;
|
||||
for (final device in devices) {
|
||||
final ratchet = _ratchetMap[RatchetMapKey(jid, device)]!;
|
||||
if (!ratchet.acknowledged) ret.add(device);
|
||||
}
|
||||
});
|
||||
|
||||
return ret;
|
||||
return ret;
|
||||
});
|
||||
}
|
||||
|
||||
/// Mark the ratchet for device [deviceId] from [jid] as acked.
|
||||
|
@ -539,7 +539,7 @@ void main() {
|
||||
// Alice marks the ratchet as acknowledged
|
||||
await aliceSession.ratchetAcknowledged(bobJid, await bobSession.getDeviceId());
|
||||
expect(
|
||||
(await aliceSession.getUnacknowledgedRatchets(bobJid)).isEmpty,
|
||||
(await aliceSession.getUnacknowledgedRatchets(bobJid))!.isEmpty,
|
||||
true,
|
||||
);
|
||||
});
|
||||
|
Loading…
Reference in New Issue
Block a user