From 25caf9b893358c381fa12a8fa54342267ba7f3d4 Mon Sep 17 00:00:00 2001 From: 0x330a <92654767+0x330a@users.noreply.github.com> Date: Mon, 20 Nov 2023 17:04:11 +1100 Subject: [PATCH] refactor: execute the sync before inviting, update libsession module --- .../securesms/database/Storage.kt | 28 ++++++++++--------- libsession-util/libsession-util | 2 +- 2 files changed, 16 insertions(+), 14 deletions(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/database/Storage.kt b/app/src/main/java/org/thoughtcrime/securesms/database/Storage.kt index 54dc4a794..aabc9b9b0 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/database/Storage.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/database/Storage.kt @@ -2,6 +2,7 @@ package org.thoughtcrime.securesms.database import android.content.Context import android.net.Uri +import kotlinx.coroutines.runBlocking import network.loki.messenger.libsession_util.Config import network.loki.messenger.libsession_util.ConfigBase.Companion.PRIORITY_HIDDEN import network.loki.messenger.libsession_util.ConfigBase.Companion.PRIORITY_PINNED @@ -1326,10 +1327,22 @@ open class Storage( val destination = Destination.ClosedGroup(groupSessionId) - ConfigurationMessageUtilities.forceSyncConfigurationNowIfNeeded(destination) - try { response.get() + + val newConfigSync = ConfigurationSyncJob(destination) + runBlocking { + newConfigSync.execute("updating-members") + } + + configFactory.saveGroupConfigs(keysConfig, infoConfig, membersConfig) + + val job = InviteContactsJob(groupSessionId, filteredMembers.toTypedArray()) + JobQueue.shared.add(job) + + infoConfig.free() + membersConfig.free() + keysConfig.free() } catch (e: Exception) { Log.e("ClosedGroup", "Failed to store new key", e) infoConfig.free() @@ -1339,17 +1352,6 @@ open class Storage( return } - configFactory.saveGroupConfigs(keysConfig, infoConfig, membersConfig) - - infoConfig.free() - membersConfig.free() - keysConfig.free() - - val newConfigSync = ConfigurationSyncJob(destination) - JobQueue.shared.add(newConfigSync) - - val job = InviteContactsJob(groupSessionId, filteredMembers.toTypedArray()) - JobQueue.shared.add(job) } override fun setServerCapabilities(server: String, capabilities: List) { diff --git a/libsession-util/libsession-util b/libsession-util/libsession-util index 50f0cde43..c52f689c8 160000 --- a/libsession-util/libsession-util +++ b/libsession-util/libsession-util @@ -1 +1 @@ -Subproject commit 50f0cde43bccd5e8b790997e8b72a868ba3f9568 +Subproject commit c52f689c823ec57255ed38301c8b7d6eca180a6c