mirror of
https://github.com/oxen-io/session-android.git
synced 2025-04-20 23:21:30 +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" -> {
|
"Info" -> {
|
||||||
val name = data.getString("name")
|
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 members = data.getString("members").split(" - ").map { Hex.fromStringCondensed(it) }
|
||||||
val admins = data.getString("admins").split(" - ").map { Hex.fromStringCondensed(it) }
|
val admins = data.getString("admins").split(" - ").map { Hex.fromStringCondensed(it) }
|
||||||
kind = Kind.Info(groupPublicKey, name, senderKeys, members, admins)
|
kind = Kind.Info(groupPublicKey, name, senderKeys, members, admins)
|
||||||
|
@ -150,7 +150,8 @@ object ClosedGroupsProtocol {
|
|||||||
val closedGroupUpdateKind = ClosedGroupUpdateMessageSendJob.Kind.Info(Hex.fromStringCondensed(groupPublicKey),
|
val closedGroupUpdateKind = ClosedGroupUpdateMessageSendJob.Kind.Info(Hex.fromStringCondensed(groupPublicKey),
|
||||||
name, setOf(), membersAsData, adminsAsData)
|
name, setOf(), membersAsData, adminsAsData)
|
||||||
val job = ClosedGroupUpdateMessageSendJob(groupPublicKey, closedGroupUpdateKind)
|
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)
|
// Delete all ratchets (it's important that this happens after sending out the update)
|
||||||
sskDatabase.removeAllClosedGroupRatchets(groupPublicKey)
|
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
|
// 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