From e6e6075c9befe0fbd8392e8dd82abf6380f9620c Mon Sep 17 00:00:00 2001 From: Cody Henthorne Date: Thu, 28 May 2026 15:40:35 -0400 Subject: [PATCH] Fix potential Recipient.resolve on main thread for group thread list item. --- .../securesms/conversationlist/ConversationListItem.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListItem.java b/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListItem.java index 64e3533552..4e8ed4d5f7 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListItem.java +++ b/app/src/main/java/org/thoughtcrime/securesms/conversationlist/ConversationListItem.java @@ -716,15 +716,15 @@ public final class ConversationListItem extends ConstraintLayout implements Bind MessageStyler.style(thread.getDate(), thread.getBodyRanges(), sourceBody); CharSequence body = StringUtil.replace(sourceBody, '\n', " "); - LiveData finalBody = Transformations.map(createFinalBodyWithMediaIcon(context, body, thread, requestManager, thumbSize, thumbTarget), updatedBody -> { + LiveData finalBody = Transformations.switchMap(createFinalBodyWithMediaIcon(context, body, thread, requestManager, thumbSize, thumbTarget), updatedBody -> { if (thread.getRecipient().isGroup()) { RecipientId groupMessageSender = thread.getGroupMessageSender(); if (!groupMessageSender.isUnknown()) { - return createGroupMessageUpdateString(context, updatedBody, Recipient.resolved(groupMessageSender)); + return Transformations.map(Recipient.live(groupMessageSender).getLiveDataResolved(), recipient -> createGroupMessageUpdateString(context, updatedBody, recipient)); } } - return new SpannableString(updatedBody); + return LiveDataUtil.just(new SpannableString(updatedBody)); }); return whileLoadingShow(sourceBody, finalBody);