mirror of
https://github.com/oxen-io/session-android.git
synced 2025-02-17 12:48:26 +00:00
Fix group leaving
This commit is contained in:
parent
158c7f13c3
commit
bed1600cbb
@ -161,7 +161,7 @@ class ClosedGroupUpdateMessageSendJob private constructor(parameters: Parameters
|
||||
}
|
||||
"Info" -> {
|
||||
val name = data.getString("name")
|
||||
val senderKeys = data.getString("senderKeys").split(" - ").map { ClosedGroupSenderKey.fromJSON(it)!! }
|
||||
val senderKeys = data.getStringOrDefault("senderKeys", "").split(" - ").mapNotNull { ClosedGroupSenderKey.fromJSON(it) } // Can be empty
|
||||
val members = data.getString("members").split(" - ").map { Hex.fromStringCondensed(it) }
|
||||
val admins = data.getString("admins").split(" - ").map { Hex.fromStringCondensed(it) }
|
||||
kind = Kind.Info(groupPublicKey, name, senderKeys, members, admins)
|
||||
|
@ -150,7 +150,8 @@ object ClosedGroupsProtocol {
|
||||
val closedGroupUpdateKind = ClosedGroupUpdateMessageSendJob.Kind.Info(Hex.fromStringCondensed(groupPublicKey),
|
||||
name, setOf(), membersAsData, adminsAsData)
|
||||
val job = ClosedGroupUpdateMessageSendJob(groupPublicKey, closedGroupUpdateKind)
|
||||
ApplicationContext.getInstance(context).jobManager.add(job)
|
||||
job.setContext(context)
|
||||
job.onRun() // Run the job immediately
|
||||
// Delete all ratchets (it's important that this happens after sending out the update)
|
||||
sskDatabase.removeAllClosedGroupRatchets(groupPublicKey)
|
||||
// Remove the group from the user's set of public keys to poll for if the user is leaving. Otherwise generate a new ratchet and
|
||||
|
Loading…
x
Reference in New Issue
Block a user