@@ -388,19 +388,18 @@ class RefreshController @Inject constructor(
388
388
apiResponse.data?.messages?.let { messages ->
389
389
390
390
writeBlocking {
391
- findLatest(folder)?.let { latestFolder ->
392
- val isConversationMode = localSettings.threadMode == ThreadMode .CONVERSATION
393
- val allImpactedThreads = createThreads(scope, latestFolder, messages, isConversationMode).also { threads ->
394
- val foldersIds = (if (isConversationMode) threads.map { it.folderId }.toSet() else emptySet()) + folder.id
395
- foldersIds.forEach { refreshUnreadCount(id = it, realm = this ) }
396
- }
397
- SentryLog .d(
398
- " Realm" ,
399
- " Saved Messages: ${latestFolder.displayForSentry()} | ${latestFolder.messages.count()} " ,
400
- )
401
-
402
- impactedThreads + = allImpactedThreads.filter { it.folderId == folder.id }
391
+ val upToDateFolder = getUpToDateFolder(folder.id)
392
+ val isConversationMode = localSettings.threadMode == ThreadMode .CONVERSATION
393
+ val allImpactedThreads = createThreads(scope, upToDateFolder, messages, isConversationMode).also { threads ->
394
+ val foldersIds = (if (isConversationMode) threads.map { it.folderId }.toSet() else emptySet()) + folder.id
395
+ foldersIds.forEach { refreshUnreadCount(id = it, realm = this ) }
403
396
}
397
+ SentryLog .d(
398
+ " Realm" ,
399
+ " Saved Messages: ${upToDateFolder.displayForSentry()} | ${upToDateFolder.messages.count()} " ,
400
+ )
401
+
402
+ impactedThreads + = allImpactedThreads.filter { it.folderId == folder.id }
404
403
}
405
404
}
406
405
@@ -725,16 +724,15 @@ class RefreshController @Inject constructor(
725
724
726
725
private fun Realm.sendSentryOrphans (folder : Folder , previousCursor : String? = null) {
727
726
writeBlocking {
728
- findLatest(folder)?.let {
729
- SentryDebug .sendOrphanMessages(previousCursor, folder = it).also { orphans ->
730
- MessageController .deleteMessages(appContext, mailbox, orphans, realm = this )
731
- }
732
- SentryDebug .sendOrphanThreads(previousCursor, folder = it, realm = this ).also { orphans ->
733
- orphans.forEach { thread ->
734
- MessageController .deleteMessages(appContext, mailbox, thread.messages, realm = this )
735
- }
736
- delete(orphans)
727
+ val upToDateFolder = getUpToDateFolder(folder.id)
728
+ SentryDebug .sendOrphanMessages(previousCursor, folder = upToDateFolder).also { orphans ->
729
+ MessageController .deleteMessages(appContext, mailbox, orphans, realm = this )
730
+ }
731
+ SentryDebug .sendOrphanThreads(previousCursor, folder = upToDateFolder, realm = this ).also { orphans ->
732
+ orphans.forEach { thread ->
733
+ MessageController .deleteMessages(appContext, mailbox, thread.messages, realm = this )
737
734
}
735
+ delete(orphans)
738
736
}
739
737
}
740
738
}
0 commit comments