From 3c2bd032ba52d804256a69d6915ecd55aff9bda2 Mon Sep 17 00:00:00 2001 From: Alex Hart Date: Fri, 18 Mar 2022 13:10:58 -0300 Subject: [PATCH] Fix NPE when secondary story does not have media and is not a text story. --- .../securesms/stories/landing/StoriesLandingItem.kt | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/org/thoughtcrime/securesms/stories/landing/StoriesLandingItem.kt b/app/src/main/java/org/thoughtcrime/securesms/stories/landing/StoriesLandingItem.kt index ea482a330a..8783f984c9 100644 --- a/app/src/main/java/org/thoughtcrime/securesms/stories/landing/StoriesLandingItem.kt +++ b/app/src/main/java/org/thoughtcrime/securesms/stories/landing/StoriesLandingItem.kt @@ -112,6 +112,7 @@ object StoriesLandingItem { avatarView.setStoryRingFromState(model.data.storyViewState) + @Suppress("CascadeIf") if (record.storyType.isTextStory) { storyPreview.setImageResource(GlideApp.with(storyPreview), StoryTextPostModel.parseFrom(record), 0, 0) } else if (record.slideDeck.thumbnailSlide != null) { @@ -123,12 +124,17 @@ object StoriesLandingItem { if (model.data.secondaryStory != null) { val secondaryRecord = model.data.secondaryStory.messageRecord as MediaMmsMessageRecord + @Suppress("CascadeIf") if (secondaryRecord.storyType.isTextStory) { storyMulti.setImageResource(GlideApp.with(storyPreview), StoryTextPostModel.parseFrom(secondaryRecord), 0, 0) - } else { + storyMulti.visible = true + } else if (secondaryRecord.slideDeck.thumbnailSlide != null) { storyMulti.setImageResource(GlideApp.with(storyPreview), secondaryRecord.slideDeck.thumbnailSlide!!, false, true) + storyMulti.visible = true + } else { + storyMulti.clear(GlideApp.with(storyPreview)) + storyMulti.visible = false } - storyMulti.visible = true } else { storyMulti.visible = false }