mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-04-21 00:59:49 +01:00
Fix foreign key constraint issues with backup restore.
This commit is contained in:
@@ -58,6 +58,9 @@ final class NewDeviceServerTask implements ServerTask {
|
||||
} catch (FullBackupImporter.DatabaseDowngradeException e) {
|
||||
Log.w(TAG, "Failed due to the backup being from a newer version of Signal.", e);
|
||||
EventBus.getDefault().post(new Status(0, Status.State.FAILURE_VERSION_DOWNGRADE));
|
||||
} catch (FullBackupImporter.ForeignKeyViolationException e) {
|
||||
Log.w(TAG, "Failed due to foreign key constraint violations.", e);
|
||||
EventBus.getDefault().post(new Status(0, Status.State.FAILURE_FOREIGN_KEY));
|
||||
} catch (IOException e) {
|
||||
Log.w(TAG, e);
|
||||
EventBus.getDefault().post(new Status(0, Status.State.FAILURE_UNKNOWN));
|
||||
@@ -99,6 +102,7 @@ final class NewDeviceServerTask implements ServerTask {
|
||||
IN_PROGRESS,
|
||||
SUCCESS,
|
||||
FAILURE_VERSION_DOWNGRADE,
|
||||
FAILURE_FOREIGN_KEY,
|
||||
FAILURE_UNKNOWN
|
||||
}
|
||||
}
|
||||
|
||||
@@ -66,6 +66,9 @@ public final class NewDeviceTransferFragment extends DeviceTransferFragment {
|
||||
case FAILURE_VERSION_DOWNGRADE:
|
||||
abort(R.string.NewDeviceTransfer__cannot_transfer_from_a_newer_version_of_signal);
|
||||
break;
|
||||
case FAILURE_FOREIGN_KEY:
|
||||
abort(R.string.NewDeviceTransfer__failure_foreign_key);
|
||||
break;
|
||||
case FAILURE_UNKNOWN:
|
||||
abort();
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user