diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/store/db/CryptoStoreAggregator.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/store/db/CryptoStoreAggregator.kt index 165062f17c..687ec95ec3 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/store/db/CryptoStoreAggregator.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/store/db/CryptoStoreAggregator.kt @@ -19,4 +19,9 @@ package org.matrix.android.sdk.internal.crypto.store.db data class CryptoStoreAggregator( val setShouldShareHistoryData: MutableMap = mutableMapOf(), val setShouldEncryptForInvitedMembersData: MutableMap = mutableMapOf(), -) +) { + fun isEmpty(): Boolean { + return setShouldShareHistoryData.isEmpty() && + setShouldEncryptForInvitedMembersData.isEmpty() + } +} diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/store/db/RealmCryptoStore.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/store/db/RealmCryptoStore.kt index c62dd7f5c2..949043f2db 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/store/db/RealmCryptoStore.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/crypto/store/db/RealmCryptoStore.kt @@ -1824,7 +1824,11 @@ internal class RealmCryptoStore @Inject constructor( val aggregator = cryptoStoreAggregator ?: return Unit.also { Timber.e("cryptoStoreAggregator is null...") } + cryptoStoreAggregator = null + if (aggregator.isEmpty()) { + return + } doRealmTransaction("onSyncCompleted", realmConfiguration) { realm -> // setShouldShareHistory aggregator.setShouldShareHistoryData.map { @@ -1835,6 +1839,5 @@ internal class RealmCryptoStore @Inject constructor( CryptoRoomEntity.getOrCreate(realm, it.key).shouldEncryptForInvitedMembers = it.value } } - cryptoStoreAggregator = null } }