From 2d603ff5c3820b888dcf49c048bd85a2f5fcd1ac Mon Sep 17 00:00:00 2001 From: Phillip Thelen Date: Tue, 11 Apr 2017 15:49:36 +0200 Subject: [PATCH] fix some crashes --- .../android/habitica/helpers/TaskFilterHelper.java | 9 +++++++-- .../habitrpgwrapper/lib/models/HabitRPGUser.java | 3 +++ 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/helpers/TaskFilterHelper.java b/Habitica/src/main/java/com/habitrpg/android/habitica/helpers/TaskFilterHelper.java index ac55cb082..cda4eb235 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/helpers/TaskFilterHelper.java +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/helpers/TaskFilterHelper.java @@ -1,5 +1,7 @@ package com.habitrpg.android.habitica.helpers; +import android.support.annotation.Nullable; + import com.magicmicky.habitrpgwrapper.lib.models.tasks.Task; import java.util.ArrayList; @@ -41,7 +43,10 @@ public class TaskFilterHelper { public List filter(List tasks) { List filtered = new ArrayList<>(); - String activeFilter = activeFilters.get(tasks.get(0).type); + String activeFilter = null; + if (activeFilters != null && activeFilters.size() > 0) { + activeFilter = activeFilters.get(tasks.get(0).type); + } for (Task task : tasks) { if (isFiltered(task, activeFilter)) { filtered.add(task); @@ -51,7 +56,7 @@ public class TaskFilterHelper { return filtered; } - private boolean isFiltered(Task task, String activeFilter) { + private boolean isFiltered(Task task, @Nullable String activeFilter) { if (!task.containsAllTagIds(tagsId)) { return false; } diff --git a/Habitica/src/main/java/com/magicmicky/habitrpgwrapper/lib/models/HabitRPGUser.java b/Habitica/src/main/java/com/magicmicky/habitrpgwrapper/lib/models/HabitRPGUser.java index e8526e2de..1d77bbf0f 100644 --- a/Habitica/src/main/java/com/magicmicky/habitrpgwrapper/lib/models/HabitRPGUser.java +++ b/Habitica/src/main/java/com/magicmicky/habitrpgwrapper/lib/models/HabitRPGUser.java @@ -351,6 +351,9 @@ public class HabitRPGUser extends BaseModel { @Override public void save() { // We need to set the user_id to all other objects + if (id == null) { + return; + } preferences.user_id = id; stats.id = id; profile.user_Id = id;