From 456aaa54f11adcef89c4ad18c7d952dc920b2c97 Mon Sep 17 00:00:00 2001 From: Greyson Parrelli Date: Wed, 11 Mar 2026 11:58:40 -0400 Subject: [PATCH] Update to SQLCipher 4.13.0 with workaround for FTS issue. --- .../securesms/database/SearchTable.kt | 16 ++++++++-------- gradle/libs.versions.toml | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/database/SearchTable.kt b/app/src/main/java/org/thoughtcrime/securesms/database/SearchTable.kt index 186c7ac269..91a57ad7c5 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/database/SearchTable.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/database/SearchTable.kt @@ -80,10 +80,10 @@ class SearchTable(context: Context, databaseHelper: SignalDatabase) : DatabaseTa $FTS_TABLE_NAME.$BODY, $FTS_TABLE_NAME.$ID AS $MESSAGE_ID, 1 AS $IS_MMS - FROM - ${MessageTable.TABLE_NAME} - INNER JOIN $FTS_TABLE_NAME ON $FTS_TABLE_NAME.$ID = ${MessageTable.TABLE_NAME}.${MessageTable.ID} - INNER JOIN ${ThreadTable.TABLE_NAME} ON $FTS_TABLE_NAME.$THREAD_ID = ${ThreadTable.TABLE_NAME}.${ThreadTable.ID} + FROM + $FTS_TABLE_NAME + CROSS JOIN ${MessageTable.TABLE_NAME} ON ${MessageTable.TABLE_NAME}.${MessageTable.ID} = $FTS_TABLE_NAME.$ID + INNER JOIN ${ThreadTable.TABLE_NAME} ON $FTS_TABLE_NAME.$THREAD_ID = ${ThreadTable.TABLE_NAME}.${ThreadTable.ID} WHERE $FTS_TABLE_NAME MATCH ? AND ${MessageTable.TABLE_NAME}.${MessageTable.TYPE} & ${MessageTypes.GROUP_V2_BIT} = 0 AND @@ -105,10 +105,10 @@ class SearchTable(context: Context, databaseHelper: SignalDatabase) : DatabaseTa $FTS_TABLE_NAME.$BODY, $FTS_TABLE_NAME.$ID AS $MESSAGE_ID, 1 AS $IS_MMS - FROM - ${MessageTable.TABLE_NAME} - INNER JOIN $FTS_TABLE_NAME ON $FTS_TABLE_NAME.$ID = ${MessageTable.TABLE_NAME}.${MessageTable.ID} - INNER JOIN ${ThreadTable.TABLE_NAME} ON $FTS_TABLE_NAME.$THREAD_ID = ${ThreadTable.TABLE_NAME}.${ThreadTable.ID} + FROM + $FTS_TABLE_NAME + CROSS JOIN ${MessageTable.TABLE_NAME} ON ${MessageTable.TABLE_NAME}.${MessageTable.ID} = $FTS_TABLE_NAME.$ID + INNER JOIN ${ThreadTable.TABLE_NAME} ON $FTS_TABLE_NAME.$THREAD_ID = ${ThreadTable.TABLE_NAME}.${ThreadTable.ID} WHERE $FTS_TABLE_NAME MATCH ? AND ${MessageTable.TABLE_NAME}.${MessageTable.THREAD_ID} = ? AND diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index eb0e0587bb..8b500c3bff 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -173,7 +173,7 @@ signal-aesgcmprovider = "org.signal:aesgcmprovider:0.0.4" signal-ringrtc = "org.signal:ringrtc-android:2.66.0" # Third Party -signal-android-database-sqlcipher = "net.zetetic:sqlcipher-android:4.11.0" +signal-android-database-sqlcipher = "net.zetetic:sqlcipher-android:4.13.0" greenrobot-eventbus = "org.greenrobot:eventbus:3.0.0" jackson-core = "com.fasterxml.jackson.core:jackson-databind:2.12.0" jackson-module-kotlin = "com.fasterxml.jackson.module:jackson-module-kotlin:2.12.0"