mirror of
https://github.com/signalapp/Signal-Android.git
synced 2025-12-25 05:27:42 +00:00
Fix bad data for users that rotated their recovery key.
This commit is contained in:
committed by
Michelle Tang
parent
e08b86cda6
commit
67a693107e
@@ -109,11 +109,14 @@ import org.thoughtcrime.securesms.jobs.BackupRestoreMediaJob
|
||||
import org.thoughtcrime.securesms.jobs.CancelRestoreMediaJob
|
||||
import org.thoughtcrime.securesms.jobs.CreateReleaseChannelJob
|
||||
import org.thoughtcrime.securesms.jobs.LocalBackupJob
|
||||
import org.thoughtcrime.securesms.jobs.MultiDeviceKeysUpdateJob
|
||||
import org.thoughtcrime.securesms.jobs.RequestGroupV2InfoJob
|
||||
import org.thoughtcrime.securesms.jobs.ResetSvrGuessCountJob
|
||||
import org.thoughtcrime.securesms.jobs.RestoreOptimizedMediaJob
|
||||
import org.thoughtcrime.securesms.jobs.RetrieveProfileJob
|
||||
import org.thoughtcrime.securesms.jobs.StickerPackDownloadJob
|
||||
import org.thoughtcrime.securesms.jobs.StorageForcePushJob
|
||||
import org.thoughtcrime.securesms.jobs.Svr2MirrorJob
|
||||
import org.thoughtcrime.securesms.jobs.UploadAttachmentToArchiveJob
|
||||
import org.thoughtcrime.securesms.keyvalue.BackupValues.ArchiveServiceCredentials
|
||||
import org.thoughtcrime.securesms.keyvalue.KeyValueStore
|
||||
@@ -241,9 +244,22 @@ object BackupRepository {
|
||||
resetInitializedStateAndAuthCredentials()
|
||||
SignalStore.account.rotateAccountEntropyPool(stagedKeyRotations.aep)
|
||||
SignalStore.backup.mediaRootBackupKey = stagedKeyRotations.mediaRootBackupKey
|
||||
refreshMasterKeyDependents()
|
||||
BackupMessagesJob.enqueue()
|
||||
}
|
||||
|
||||
private fun refreshMasterKeyDependents() {
|
||||
val jobs = buildList {
|
||||
add(Svr2MirrorJob())
|
||||
if (SignalStore.account.isMultiDevice) {
|
||||
add(MultiDeviceKeysUpdateJob())
|
||||
}
|
||||
add(StorageForcePushJob())
|
||||
}
|
||||
|
||||
AppDependencies.jobManager.addAll(jobs)
|
||||
}
|
||||
|
||||
fun resetInitializedStateAndAuthCredentials() {
|
||||
SignalStore.backup.backupsInitialized = false
|
||||
SignalStore.backup.messageCredentials.clearAll()
|
||||
|
||||
@@ -189,9 +189,10 @@ public class ApplicationMigrations {
|
||||
static final int ARCHIVE_BACKUP_ID = 145;
|
||||
static final int QUOTE_THUMBNAIL_BACKFILL = 146;
|
||||
static final int EMOJI_ENGLISH_SEARCH = 147;
|
||||
static final int AEP_ROTATE_FIX = 148;
|
||||
}
|
||||
|
||||
public static final int CURRENT_VERSION = 147;
|
||||
public static final int CURRENT_VERSION = 148;
|
||||
|
||||
/**
|
||||
* This *must* be called after the {@link JobManager} has been instantiated, but *before* the call
|
||||
@@ -874,6 +875,10 @@ public class ApplicationMigrations {
|
||||
jobs.put(Version.EMOJI_ENGLISH_SEARCH, new EmojiSearchEnglishLabelsMigrationJob());
|
||||
}
|
||||
|
||||
if (lastSeenVersion < Version.AEP_ROTATE_FIX) {
|
||||
jobs.put(Version.AEP_ROTATE_FIX, new AepMigrationJob());
|
||||
}
|
||||
|
||||
return jobs;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user