diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/data/local/implementation/RealmTaskLocalRepository.java b/Habitica/src/main/java/com/habitrpg/android/habitica/data/local/implementation/RealmTaskLocalRepository.java index d0f4590fa..346731a84 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/data/local/implementation/RealmTaskLocalRepository.java +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/data/local/implementation/RealmTaskLocalRepository.java @@ -41,11 +41,14 @@ public class RealmTaskLocalRepository extends RealmBaseLocalRepository implement realm.executeTransactionAsync(realm1 -> { List sortedTasks = new ArrayList<>(); - sortedTasks.addAll(sortTasks(tasks.tasks, tasksOrder.getHabits())); - sortedTasks.addAll(sortTasks(tasks.tasks, tasksOrder.getDailys())); - sortedTasks.addAll(sortTasks(tasks.tasks, tasksOrder.getTodos())); - sortedTasks.addAll(sortTasks(tasks.tasks, tasksOrder.getRewards())); - + if (tasksOrder != null) { + sortedTasks.addAll(sortTasks(tasks.tasks, tasksOrder.getHabits())); + sortedTasks.addAll(sortTasks(tasks.tasks, tasksOrder.getDailys())); + sortedTasks.addAll(sortTasks(tasks.tasks, tasksOrder.getTodos())); + sortedTasks.addAll(sortTasks(tasks.tasks, tasksOrder.getRewards())); + } else { + sortedTasks.addAll(tasks.tasks.values()); + } if (userId != null) { removeOldTasks(realm1, userId, sortedTasks); } diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/helpers/QrCodeManager.java b/Habitica/src/main/java/com/habitrpg/android/habitica/helpers/QrCodeManager.java index ac3ae64b9..6fb7f9a57 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/helpers/QrCodeManager.java +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/helpers/QrCodeManager.java @@ -71,7 +71,9 @@ public class QrCodeManager { avatarView.configureView(false, false, false); this.qrCodeWrapper = (FrameLayout) qrLayout.findViewById(R.id.qrCodeWrapper); - userRepository.getUser(userId).subscribe(avatarView::setUser, RxErrorHandler.handleEmptyError()); + if (userRepository != null) { + userRepository.getUser(userId).subscribe(avatarView::setUser, RxErrorHandler.handleEmptyError()); + } this.displayQrCode(); this.setDownloadQr(); diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/tasks/TaskRecyclerViewFragment.java b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/tasks/TaskRecyclerViewFragment.java index 709338d1e..f210f0132 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/tasks/TaskRecyclerViewFragment.java +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/tasks/TaskRecyclerViewFragment.java @@ -317,7 +317,9 @@ public class TaskRecyclerViewFragment extends BaseFragment implements View.OnCli public void onViewCreated(View view, @Nullable Bundle savedInstanceState) { super.onViewCreated(view, savedInstanceState); recyclerView.setAdapter((RecyclerView.Adapter) recyclerAdapter); - recyclerAdapter.filter(); + if (recyclerAdapter != null) { + recyclerAdapter.filter(); + } if (Task.TYPE_REWARD.equals(classType)) { compositeSubscription.add(taskRepository.getTasks(this.classType, userID) diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/TaskFilterDialog.java b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/TaskFilterDialog.java index cffb2e0e9..fbc19574a 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/TaskFilterDialog.java +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/TaskFilterDialog.java @@ -220,9 +220,11 @@ public class TaskFilterDialog extends AlertDialog implements RadioGroup.OnChecke private void createTagEditViews() { LayoutInflater inflater = LayoutInflater.from(getContext()); - for (int index = 0; index < tags.size(); index++) { - Tag tag = tags.get(index); - createTagEditView(inflater, index, tag); + if (tags != null) { + for (int index = 0; index < tags.size(); index++) { + Tag tag = tags.get(index); + createTagEditView(inflater, index, tag); + } } createAddTagButton(); }