From d4a28d6aa1382dc7929ea863c4bea3d0579d55d4 Mon Sep 17 00:00:00 2001 From: Ammar Githam Date: Wed, 9 Sep 2020 00:38:20 +0900 Subject: [PATCH] Handle null context! Need to add this check in all async listeners. --- .../java/awais/instagrabber/fragments/HashTagFragment.java | 4 +++- .../awais/instagrabber/fragments/main/ProfileFragment.java | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/awais/instagrabber/fragments/HashTagFragment.java b/app/src/main/java/awais/instagrabber/fragments/HashTagFragment.java index bfe157d2..c3428d31 100644 --- a/app/src/main/java/awais/instagrabber/fragments/HashTagFragment.java +++ b/app/src/main/java/awais/instagrabber/fragments/HashTagFragment.java @@ -1,5 +1,6 @@ package awais.instagrabber.fragments; +import android.content.Context; import android.content.res.ColorStateList; import android.graphics.Typeface; import android.os.AsyncTask; @@ -223,7 +224,7 @@ public class HashTagFragment extends Fragment { postsViewModel.getList().observe(fragmentActivity, postsAdapter::submitList); binding.mainPosts.setAdapter(postsAdapter); final RecyclerLazyLoader lazyLoader = new RecyclerLazyLoader(layoutManager, (page, totalItemsCount) -> { - if (!hasNextPage) return; + if (!hasNextPage || getContext() == null) return; binding.swipeRefreshLayout.setRefreshing(true); fetchPosts(); endCursor = null; @@ -235,6 +236,7 @@ public class HashTagFragment extends Fragment { stopCurrentExecutor(); binding.swipeRefreshLayout.setRefreshing(true); currentlyExecuting = new HashtagFetcher(hashtag.substring(1), result -> { + if (getContext() == null) return; hashtagModel = result; binding.swipeRefreshLayout.setRefreshing(false); if (hashtagModel == null) { diff --git a/app/src/main/java/awais/instagrabber/fragments/main/ProfileFragment.java b/app/src/main/java/awais/instagrabber/fragments/main/ProfileFragment.java index b44bcbf9..3e4387e7 100644 --- a/app/src/main/java/awais/instagrabber/fragments/main/ProfileFragment.java +++ b/app/src/main/java/awais/instagrabber/fragments/main/ProfileFragment.java @@ -327,6 +327,7 @@ public class ProfileFragment extends Fragment implements SwipeRefreshLayout.OnRe private void fetchProfileDetails() { new ProfileFetcher(username.substring(1), profileModel -> { + if (getContext() == null) return; this.profileModel = profileModel; final String userIdFromCookie = Utils.getUserIdFromCookie(cookie); final boolean isSelf = isLoggedIn