Fix / cold start
This commit is contained in:
parent
5fb4f274f9
commit
367057cc29
@ -57,7 +57,6 @@ internal class MXMegolmDecryption(private val userId: String,
|
|||||||
|
|
||||||
var newSessionListener: NewSessionListener? = null
|
var newSessionListener: NewSessionListener? = null
|
||||||
|
|
||||||
var hasCheckUserCrossSigning = false
|
|
||||||
/**
|
/**
|
||||||
* Events which we couldn't decrypt due to unknown sessions / indexes: map from
|
* Events which we couldn't decrypt due to unknown sessions / indexes: map from
|
||||||
* senderKey|sessionId to timelines to list of MatrixEvents.
|
* senderKey|sessionId to timelines to list of MatrixEvents.
|
||||||
@ -67,17 +66,7 @@ internal class MXMegolmDecryption(private val userId: String,
|
|||||||
override suspend fun decryptEvent(event: Event, timeline: String): MXEventDecryptionResult {
|
override suspend fun decryptEvent(event: Event, timeline: String): MXEventDecryptionResult {
|
||||||
// If cross signing is enabled, we don't send request until the keys are trusted
|
// If cross signing is enabled, we don't send request until the keys are trusted
|
||||||
// There could be a race effect here when xsigning is enabled, we should ensure that keys was downloaded once
|
// There could be a race effect here when xsigning is enabled, we should ensure that keys was downloaded once
|
||||||
if (!hasCheckUserCrossSigning) {
|
val requestOnFail = cryptoStore.getMyCrossSigningInfo()?.isTrusted() == true
|
||||||
deviceListManager.downloadKeys(listOf(userId), true)
|
|
||||||
hasCheckUserCrossSigning = true
|
|
||||||
}
|
|
||||||
val requestOnFail =
|
|
||||||
if (cryptoStore.getMyCrossSigningInfo() != null) {
|
|
||||||
cryptoStore.getMyCrossSigningInfo()?.isTrusted() == true
|
|
||||||
} else {
|
|
||||||
// Legacy
|
|
||||||
true
|
|
||||||
}
|
|
||||||
return decryptEvent(event, timeline, requestOnFail)
|
return decryptEvent(event, timeline, requestOnFail)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user