From b6501c9a29c42d98f3603f0217b6781a9d56f4ff Mon Sep 17 00:00:00 2001 From: Alinson Xavier Date: Tue, 30 May 2017 09:22:15 -0400 Subject: [PATCH] Fix NullPointerException --- .../main/java/org/isoron/uhabits/models/CheckmarkList.java | 4 +++- .../org/isoron/uhabits/models/memory/MemoryCheckmarkList.java | 2 ++ .../org/isoron/uhabits/models/sqlite/SQLiteCheckmarkList.java | 1 + 3 files changed, 6 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/org/isoron/uhabits/models/CheckmarkList.java b/app/src/main/java/org/isoron/uhabits/models/CheckmarkList.java index cf617628f..0556038fd 100644 --- a/app/src/main/java/org/isoron/uhabits/models/CheckmarkList.java +++ b/app/src/main/java/org/isoron/uhabits/models/CheckmarkList.java @@ -192,7 +192,7 @@ public abstract class CheckmarkList Checkmark newest = getNewestComputed(); Checkmark oldest = getOldestComputed(); - if (newest == null) + if (newest == null || oldest == null) { forceRecompute(from, to); } @@ -208,6 +208,7 @@ public abstract class CheckmarkList * * @return oldest checkmark already computed */ + @Nullable protected abstract Checkmark getOldestComputed(); /** @@ -285,5 +286,6 @@ public abstract class CheckmarkList * * @return newest checkmark already computed */ + @Nullable protected abstract Checkmark getNewestComputed(); } diff --git a/app/src/main/java/org/isoron/uhabits/models/memory/MemoryCheckmarkList.java b/app/src/main/java/org/isoron/uhabits/models/memory/MemoryCheckmarkList.java index 5b02be26a..9a566e51f 100644 --- a/app/src/main/java/org/isoron/uhabits/models/memory/MemoryCheckmarkList.java +++ b/app/src/main/java/org/isoron/uhabits/models/memory/MemoryCheckmarkList.java @@ -72,6 +72,7 @@ public class MemoryCheckmarkList extends CheckmarkList } @Override + @Nullable protected Checkmark getOldestComputed() { if(list.isEmpty()) return null; @@ -79,6 +80,7 @@ public class MemoryCheckmarkList extends CheckmarkList } @Override + @Nullable protected Checkmark getNewestComputed() { if(list.isEmpty()) return null; diff --git a/app/src/main/java/org/isoron/uhabits/models/sqlite/SQLiteCheckmarkList.java b/app/src/main/java/org/isoron/uhabits/models/sqlite/SQLiteCheckmarkList.java index 42de31712..c63e1e1fd 100644 --- a/app/src/main/java/org/isoron/uhabits/models/sqlite/SQLiteCheckmarkList.java +++ b/app/src/main/java/org/isoron/uhabits/models/sqlite/SQLiteCheckmarkList.java @@ -153,6 +153,7 @@ public class SQLiteCheckmarkList extends CheckmarkList } @Override + @Nullable protected Checkmark getOldestComputed() { check(habit.getId());