Do the account restore within a transaction.

fork-5.53.8
Greyson Parrelli 2021-08-19 12:17:53 -04:00
rodzic 58a8902d4e
commit a1095f966c
1 zmienionych plików z 8 dodań i 1 usunięć

Wyświetl plik

@ -3,6 +3,7 @@ package org.thoughtcrime.securesms.jobs;
import androidx.annotation.NonNull;
import org.signal.core.util.logging.Log;
import org.thoughtcrime.securesms.database.DatabaseFactory;
import org.thoughtcrime.securesms.dependencies.ApplicationDependencies;
import org.thoughtcrime.securesms.jobmanager.Data;
import org.thoughtcrime.securesms.jobmanager.Job;
@ -103,7 +104,13 @@ public class StorageAccountRestoreJob extends BaseJob {
Log.i(TAG, "Applying changes locally...");
StorageSyncHelper.applyAccountStorageSyncUpdates(context, Recipient.self(), accountRecord, false);
DatabaseFactory.getInstance(context).getRawDatabase().beginTransaction();
try {
StorageSyncHelper.applyAccountStorageSyncUpdates(context, Recipient.self(), accountRecord, false);
DatabaseFactory.getInstance(context).getRawDatabase().setTransactionSuccessful();
} finally {
DatabaseFactory.getInstance(context).getRawDatabase().endTransaction();
}
JobManager jobManager = ApplicationDependencies.getJobManager();