From b2e3d969f320d344fe83917f1fadd133c2b648eb Mon Sep 17 00:00:00 2001 From: Dima Date: Tue, 18 Jun 2024 13:28:18 +0900 Subject: [PATCH] Fixing a bug in itemChangesWithoutDeletions predicate that led to an incorrect items being selected for upload during a group sync. Fixing an error in WebSocket message parsing for group updates. Upping versionCode to 75 --- .../org/zotero/android/database/requests/Predicates.kt | 9 ++++++--- .../java/org/zotero/android/sync/LibraryIdentifier.kt | 2 +- buildSrc/src/main/kotlin/BuildConfig.kt | 2 +- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/org/zotero/android/database/requests/Predicates.kt b/app/src/main/java/org/zotero/android/database/requests/Predicates.kt index 3bcc457b..d10aa133 100644 --- a/app/src/main/java/org/zotero/android/database/requests/Predicates.kt +++ b/app/src/main/java/org/zotero/android/database/requests/Predicates.kt @@ -55,9 +55,12 @@ fun RealmQuery.changesWithoutDeletions(libraryId: LibraryIdentifier): Rea } fun RealmQuery.itemChangesWithoutDeletions(libraryId: LibraryIdentifier): RealmQuery { - val changePredicate = changed() - .or() - .attachmentChanged() + val changePredicate = + beginGroup() + .changed() + .or() + .attachmentChanged() + .endGroup() return changePredicate .and() .library(libraryId) diff --git a/app/src/main/java/org/zotero/android/sync/LibraryIdentifier.kt b/app/src/main/java/org/zotero/android/sync/LibraryIdentifier.kt index 3b053bec..3dbb8159 100644 --- a/app/src/main/java/org/zotero/android/sync/LibraryIdentifier.kt +++ b/app/src/main/java/org/zotero/android/sync/LibraryIdentifier.kt @@ -53,7 +53,7 @@ sealed class LibraryIdentifier: java.io.Serializable { if (apiPath.contains("groups") && lastSeparator != -1) { val groupId = apiPath.substring(startIndex = lastSeparator + 1).toIntOrNull() if (groupId != null) { - LibraryIdentifier.group(groupId) + return LibraryIdentifier.group(groupId) } } diff --git a/buildSrc/src/main/kotlin/BuildConfig.kt b/buildSrc/src/main/kotlin/BuildConfig.kt index 54004be1..82e9a3d9 100644 --- a/buildSrc/src/main/kotlin/BuildConfig.kt +++ b/buildSrc/src/main/kotlin/BuildConfig.kt @@ -4,7 +4,7 @@ object BuildConfig { const val compileSdkVersion = 34 const val targetSdk = 33 - val versionCode = 74 // Must be updated on every build + val versionCode = 75 // Must be updated on every build val version = Version( major = 1, minor = 0,