From eb9775e307da3c1687a7f5d1a0e679e13bdbfed2 Mon Sep 17 00:00:00 2001 From: ganfra Date: Thu, 5 Dec 2019 17:14:56 +0100 Subject: [PATCH] Fix some crypto realm issues --- .../android/internal/crypto/store/db/RealmCryptoStore.kt | 3 ++- .../crypto/store/db/model/OutgoingRoomKeyRequestEntity.kt | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/RealmCryptoStore.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/RealmCryptoStore.kt index 8a3b66dfe5..c194a400ce 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/RealmCryptoStore.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/RealmCryptoStore.kt @@ -643,9 +643,10 @@ internal class RealmCryptoStore(private val realmConfiguration: RealmConfigurati } override fun getOutgoingRoomKeyRequestByState(states: Set): OutgoingRoomKeyRequest? { + val statesIndex = states.map { it.ordinal }.toTypedArray() return doRealmQueryAndCopy(realmConfiguration) { it.where() - .`in`(OutgoingRoomKeyRequestEntityFields.STATE, states.map { it.ordinal }.toTypedArray()) + .`in`(OutgoingRoomKeyRequestEntityFields.STATE, statesIndex) .findFirst() } ?.toOutgoingRoomKeyRequest() diff --git a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/OutgoingRoomKeyRequestEntity.kt b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/OutgoingRoomKeyRequestEntity.kt index b7bcb603f5..3130bd2f89 100644 --- a/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/OutgoingRoomKeyRequestEntity.kt +++ b/matrix-sdk-android/src/main/java/im/vector/matrix/android/internal/crypto/store/db/model/OutgoingRoomKeyRequestEntity.kt @@ -41,6 +41,7 @@ internal open class OutgoingRoomKeyRequestEntity( * Convert to OutgoingRoomKeyRequest */ fun toOutgoingRoomKeyRequest(): OutgoingRoomKeyRequest { + val cancellationTxnId = this.cancellationTxnId return OutgoingRoomKeyRequest( RoomKeyRequestBody().apply { algorithm = requestBodyAlgorithm