From 358e1f7323989717b5f3a6688e28317430eb2911 Mon Sep 17 00:00:00 2001 From: Matthieu <24-artectrex@users.noreply.shinice.net> Date: Sun, 27 Jun 2021 10:56:52 +0200 Subject: [PATCH] Don't assume non null: API can send bad responses --- .../posts/feeds/cachedFeeds/postFeeds/PostFeedFragment.kt | 4 ++-- .../app/posts/feeds/uncachedFeeds/UncachedPostsFragment.kt | 7 ++----- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/org/pixeldroid/app/posts/feeds/cachedFeeds/postFeeds/PostFeedFragment.kt b/app/src/main/java/org/pixeldroid/app/posts/feeds/cachedFeeds/postFeeds/PostFeedFragment.kt index 5f22b80c..693f43ba 100644 --- a/app/src/main/java/org/pixeldroid/app/posts/feeds/cachedFeeds/postFeeds/PostFeedFragment.kt +++ b/app/src/main/java/org/pixeldroid/app/posts/feeds/cachedFeeds/postFeeds/PostFeedFragment.kt @@ -88,8 +88,8 @@ class PostFeedFragment: CachedFeedFragment() { } override fun onBindViewHolder(holder: RecyclerView.ViewHolder, position: Int) { - val uiModel = getItem(position) as Status - uiModel.let { + val uiModel = getItem(position) as Status? + uiModel?.let { (holder as StatusViewHolder).bind(it, apiHolder, db, lifecycleScope, displayDimensionsInPx) } } diff --git a/app/src/main/java/org/pixeldroid/app/posts/feeds/uncachedFeeds/UncachedPostsFragment.kt b/app/src/main/java/org/pixeldroid/app/posts/feeds/uncachedFeeds/UncachedPostsFragment.kt index 9a528833..7f503c04 100644 --- a/app/src/main/java/org/pixeldroid/app/posts/feeds/uncachedFeeds/UncachedPostsFragment.kt +++ b/app/src/main/java/org/pixeldroid/app/posts/feeds/uncachedFeeds/UncachedPostsFragment.kt @@ -91,13 +91,10 @@ class UncachedPostsFragment : UncachedFeedFragment() { return StatusViewHolder.create(parent) } - override fun getItemViewType(position: Int): Int { - return R.layout.post_fragment - } + override fun getItemViewType(position: Int): Int = R.layout.post_fragment override fun onBindViewHolder(holder: RecyclerView.ViewHolder, position: Int) { - val uiModel = getItem(position) as Status - uiModel.let { + getItem(position)?.let { (holder as StatusViewHolder).bind(it, apiHolder, db, lifecycleScope, displayDimensionsInPx) } }