From e5d196c64254b0cd55fa326d11a8e6ece684ab09 Mon Sep 17 00:00:00 2001 From: Cody Henthorne Date: Wed, 30 Nov 2022 13:22:20 -0500 Subject: [PATCH] Log backup verify failure independently from file not found. --- .../org/thoughtcrime/securesms/backup/BackupVerifier.kt | 1 + .../thoughtcrime/securesms/jobs/LocalBackupJobApi29.java | 7 ++++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/backup/BackupVerifier.kt b/app/src/main/java/org/thoughtcrime/securesms/backup/BackupVerifier.kt index e1e917db8a..dc87c93667 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/backup/BackupVerifier.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/backup/BackupVerifier.kt @@ -15,6 +15,7 @@ object BackupVerifier { private val TAG = Log.tag(BackupVerifier::class.java) @JvmStatic + @Throws(IOException::class) fun verifyFile(cipherStream: InputStream, passphrase: String, expectedCount: Long): Boolean { val inputStream = BackupRecordInputStream(cipherStream, passphrase) diff --git a/app/src/main/java/org/thoughtcrime/securesms/jobs/LocalBackupJobApi29.java b/app/src/main/java/org/thoughtcrime/securesms/jobs/LocalBackupJobApi29.java index bbd4b0e2d6..9ac0d1b355 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/jobs/LocalBackupJobApi29.java +++ b/app/src/main/java/org/thoughtcrime/securesms/jobs/LocalBackupJobApi29.java @@ -197,7 +197,12 @@ public final class LocalBackupJobApi29 extends BaseJob { ThreadUtil.sleep(WAIT_FOR_SCOPED_STORAGE[attempts]); try (InputStream cipherStream = context.getContentResolver().openInputStream(temporaryFile.getUri())) { - valid = BackupVerifier.verifyFile(cipherStream, backupPassword, finishedEvent.getCount()); + try { + valid = BackupVerifier.verifyFile(cipherStream, backupPassword, finishedEvent.getCount()); + } catch (IOException e) { + Log.w(TAG, "Unable to verify backup", e); + valid = false; + } } catch (IOException e) { attempts++; Log.w(TAG, "Unable to find backup file, attempt: " + attempts + "/" + MAX_STORAGE_ATTEMPTS);