From 7d7e6e50136b7a37ee3103f51c10628f770fa591 Mon Sep 17 00:00:00 2001 From: Greyson Parrelli Date: Wed, 15 Mar 2023 16:19:01 -0400 Subject: [PATCH] Update SQLCipher to 4.5.3-FTS-S3 --- .../database/SqlCipherDeletingErrorHandler.java | 4 ++-- .../securesms/database/SqlCipherErrorHandler.kt | 11 +++++------ dependencies.gradle | 2 +- gradle/verification-metadata.xml | 5 +++++ 4 files changed, 13 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/database/SqlCipherDeletingErrorHandler.java b/app/src/main/java/org/thoughtcrime/securesms/database/SqlCipherDeletingErrorHandler.java index 6135f53d02..ad60bf138a 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/database/SqlCipherDeletingErrorHandler.java +++ b/app/src/main/java/org/thoughtcrime/securesms/database/SqlCipherDeletingErrorHandler.java @@ -27,8 +27,8 @@ public final class SqlCipherDeletingErrorHandler implements DatabaseErrorHandler } @Override - public void onCorruption(SQLiteDatabase db) { - Log.e(TAG, "Database '" + databaseName + "' corrupted! Going to try to run some diagnostics."); + public void onCorruption(SQLiteDatabase db, String message) { + Log.e(TAG, "Database '" + databaseName + "' corrupted! Message: " + message + ". Going to try to run some diagnostics."); Log.w(TAG, " ===== PRAGMA integrity_check ====="); try (Cursor cursor = db.rawQuery("PRAGMA integrity_check", null)) { diff --git a/app/src/main/java/org/thoughtcrime/securesms/database/SqlCipherErrorHandler.kt b/app/src/main/java/org/thoughtcrime/securesms/database/SqlCipherErrorHandler.kt index 246f3ba2ec..8d15d0cd0c 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/database/SqlCipherErrorHandler.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/database/SqlCipherErrorHandler.kt @@ -18,15 +18,14 @@ import java.util.concurrent.atomic.AtomicReference */ class SqlCipherErrorHandler(private val databaseName: String) : DatabaseErrorHandler { - override fun onCorruption(db: SQLiteDatabase) { - val output = StringBuilder() - output.append("Database '$databaseName' corrupted! Going to try to run some diagnostics.\n") - + override fun onCorruption(db: SQLiteDatabase, message: String) { val result: DiagnosticResults = runDiagnostics(ApplicationDependencies.getApplication(), db) var lines: List = result.logs.split("\n") - lines = listOf("Database '$databaseName' corrupted!. Diagnostics results:\n") + lines + lines = listOf("Database '$databaseName' corrupted!", "[sqlite] $message", "Diagnostics results:") + lines - Log.e(TAG, "Database '$databaseName' corrupted!. Diagnostics results:\n ${result.logs}") + Log.e(TAG, "Database '$databaseName' corrupted!") + Log.e(TAG, "[sqlite] $message") + Log.e(TAG, "Diagnostic results:\n ${result.logs}") if (result is DiagnosticResults.Success) { if (result.pragma1Passes && result.pragma2Passes) { diff --git a/dependencies.gradle b/dependencies.gradle index 0f9a0e7346..61d5265d71 100644 --- a/dependencies.gradle +++ b/dependencies.gradle @@ -106,7 +106,7 @@ dependencyResolutionManagement { alias('signal-aesgcmprovider').to('org.signal:aesgcmprovider:0.0.3') alias('signal-argon2').to('org.signal:argon2:13.1') alias('signal-ringrtc').to('org.signal:ringrtc-android:2.25.1') - alias('signal-android-database-sqlcipher').to('org.signal:sqlcipher-android:4.5.3-FTS-S2') + alias('signal-android-database-sqlcipher').to('org.signal:sqlcipher-android:4.5.3-FTS-S3') // Third Party alias('greenrobot-eventbus').to('org.greenrobot:eventbus:3.0.0') diff --git a/gradle/verification-metadata.xml b/gradle/verification-metadata.xml index 020545d41c..c45f4c24c2 100644 --- a/gradle/verification-metadata.xml +++ b/gradle/verification-metadata.xml @@ -4790,6 +4790,11 @@ https://docs.gradle.org/current/userguide/dependency_verification.html + + + + +