mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-04-02 08:23:00 +01:00
Fix potential username link desync after backup restore.
This commit is contained in:
committed by
jeffrey-signal
parent
cd3e9a4009
commit
276662026e
@@ -397,6 +397,11 @@ class RefreshOwnProfileJob private constructor(parameters: Parameters) : BaseJob
|
||||
}
|
||||
|
||||
private fun checkUsernameIsInSync() {
|
||||
if (SignalStore.misc.needsUsernameRestore) {
|
||||
Log.d(TAG, "Username restore is still pending. Skipping consistency check.")
|
||||
return
|
||||
}
|
||||
|
||||
try {
|
||||
val localUsername = SignalStore.account.username
|
||||
|
||||
|
||||
@@ -549,7 +549,12 @@ object UsernameRepository {
|
||||
val link = username.generateLink(usernameLinkComponents.entropy)
|
||||
|
||||
return when (val result = SignalNetwork.account.confirmUsername(username, link)) {
|
||||
is NetworkResult.Success -> UsernameReclaimResult.SUCCESS
|
||||
is NetworkResult.Success -> {
|
||||
SignalStore.account.usernameLink = UsernameLinkComponents(usernameLinkComponents.entropy, result.result)
|
||||
SignalDatabase.recipients.markNeedsSync(Recipient.self().id)
|
||||
StorageSyncHelper.scheduleSyncForDataChange()
|
||||
UsernameReclaimResult.SUCCESS
|
||||
}
|
||||
is NetworkResult.StatusCodeError -> {
|
||||
when (result.code) {
|
||||
409 -> {
|
||||
|
||||
Reference in New Issue
Block a user