From 81305bfc6b4c5acc1fa3845b31c78786f1ab686b Mon Sep 17 00:00:00 2001 From: Alex Hart Date: Mon, 1 Dec 2025 11:15:22 -0400 Subject: [PATCH] Only proceed with completion check if the id matches. --- .../gifts/viewgift/received/ViewReceivedGiftViewModel.kt | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/app/src/main/java/org/thoughtcrime/securesms/badges/gifts/viewgift/received/ViewReceivedGiftViewModel.kt b/app/src/main/java/org/thoughtcrime/securesms/badges/gifts/viewgift/received/ViewReceivedGiftViewModel.kt index 456f796a80..9537ac1787 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/badges/gifts/viewgift/received/ViewReceivedGiftViewModel.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/badges/gifts/viewgift/received/ViewReceivedGiftViewModel.kt @@ -105,6 +105,11 @@ class ViewReceivedGiftViewModel( private fun awaitRedemptionCompletion(setAsPrimary: Boolean): Completable { return Completable.create { emitter -> val messageObserver = MessageObserver { messageId -> + if (messageId.id != this.messageId) { + return@MessageObserver + } + + Log.d(TAG, "Received update for $messageId while awaiting completion of redemption.") val message = SignalDatabase.messages.getMessageRecord(messageId.id) when (message.requireGiftBadge().redemptionState) { GiftBadge.RedemptionState.REDEEMED -> emitter.onComplete()