Skip to content

Commit 627b1bf

Browse files
committed
Null check and fragment manager check. Fixes austinhuang0131/barinsta#1116
1 parent 42e4580 commit 627b1bf

File tree

3 files changed

+17
-4
lines changed

3 files changed

+17
-4
lines changed

.codebeatsettings

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"JAVA": {
3+
"TOO_MANY_IVARS": [8, 10, 20, 30]
4+
}
5+
}

app/src/main/java/awais/instagrabber/fragments/StoryListViewerFragment.java

+9-3
Original file line numberDiff line numberDiff line change
@@ -51,12 +51,15 @@ public final class StoryListViewerFragment extends Fragment implements SwipeRefr
5151
private AppCompatActivity fragmentActivity;
5252
private FragmentStoryListViewerBinding binding;
5353
private SwipeRefreshLayout root;
54-
private boolean shouldRefresh = true, firstRefresh = true;
54+
private boolean shouldRefresh = true;
55+
private boolean firstRefresh = true;
5556
private FeedStoriesViewModel feedStoriesViewModel;
5657
private ArchivesViewModel archivesViewModel;
5758
private StoriesService storiesService;
5859
private Context context;
59-
private String type, currentQuery, endCursor = null;
60+
private String type;
61+
private String currentQuery;
62+
private String endCursor = null;
6063
private FeedStoriesListAdapter adapter;
6164
private MenuItem menuSearch;
6265

@@ -226,7 +229,10 @@ public void onRefresh() {
226229
binding.swipeRefreshLayout.setRefreshing(true);
227230
if (type.equals("feed") && firstRefresh) {
228231
binding.swipeRefreshLayout.setRefreshing(false);
229-
adapter.submitList(feedStoriesViewModel.getList().getValue());
232+
final List<FeedStoryModel> value = feedStoriesViewModel.getList().getValue();
233+
if (value != null) {
234+
adapter.submitList(value);
235+
}
230236
firstRefresh = false;
231237
} else if (type.equals("feed")) {
232238
storiesService.getFeedStories(new ServiceCallback<List<FeedStoryModel>>() {

app/src/main/java/awais/instagrabber/fragments/main/ProfileFragment.java

+3-1
Original file line numberDiff line numberDiff line change
@@ -264,7 +264,9 @@ private void openPostDialog(final Media feedModel,
264264
postViewV2Fragment.dismiss();
265265
binding.postsRecyclerView.refresh();
266266
});
267-
postViewV2Fragment.show(getChildFragmentManager(), "post_view");
267+
final FragmentManager fragmentManager = getChildFragmentManager();
268+
if (fragmentManager.isDestroyed() || fragmentManager.isStateSaved()) return;
269+
postViewV2Fragment.show(fragmentManager, "post_view");
268270
}
269271
};
270272
private final FeedAdapterV2.SelectionModeCallback selectionModeCallback = new FeedAdapterV2.SelectionModeCallback() {

0 commit comments

Comments
 (0)