Fix crash with disappearing messages while viewing message details.

This commit is contained in:
Cody Henthorne
2022-02-11 11:52:50 -05:00
committed by Greyson Parrelli
parent 2718dca6ea
commit 1692caeab7
3 changed files with 21 additions and 74 deletions

View File

@@ -438,7 +438,7 @@ public class MmsSmsDatabase extends Database {
private @NonNull Collection<SyncMessageId> incrementReceiptCounts(@NonNull List<SyncMessageId> syncMessageIds, long timestamp, @NonNull MessageDatabase.ReceiptType receiptType) {
SQLiteDatabase db = databaseHelper.getSignalWritableDatabase();
ThreadDatabase threadDatabase = SignalDatabase.threads();
Set<MessageUpdate> messageUpdates = new HashSet<>();
Set<MessageUpdate> messageUpdates = new HashSet<>();
Collection<SyncMessageId> unhandled = new HashSet<>();
db.beginTransaction();
@@ -455,16 +455,14 @@ public class MmsSmsDatabase extends Database {
for (MessageUpdate update : messageUpdates) {
threadDatabase.updateSilently(update.getThreadId(), false);
ApplicationDependencies.getDatabaseObserver().notifyMessageUpdateObservers(update.getMessageId());
ApplicationDependencies.getDatabaseObserver().notifyVerboseConversationListeners(Collections.singleton(update.getThreadId()));
}
db.setTransactionSuccessful();
} finally {
db.endTransaction();
for (MessageUpdate messageUpdate : messageUpdates) {
ApplicationDependencies.getDatabaseObserver().notifyMessageUpdateObservers(messageUpdate.getMessageId());
}
if (messageUpdates.size() > 0) {
notifyConversationListListeners();
}