aboutsummaryrefslogtreecommitdiffstats
path: root/main/src/cgeo/geocaching/utils/LazyInitializedList.java
diff options
context:
space:
mode:
Diffstat (limited to 'main/src/cgeo/geocaching/utils/LazyInitializedList.java')
-rw-r--r--main/src/cgeo/geocaching/utils/LazyInitializedList.java8
1 files changed, 8 insertions, 0 deletions
diff --git a/main/src/cgeo/geocaching/utils/LazyInitializedList.java b/main/src/cgeo/geocaching/utils/LazyInitializedList.java
index 27649e8..e607919 100644
--- a/main/src/cgeo/geocaching/utils/LazyInitializedList.java
+++ b/main/src/cgeo/geocaching/utils/LazyInitializedList.java
@@ -1,7 +1,10 @@
package cgeo.geocaching.utils;
+import org.eclipse.jdt.annotation.NonNull;
+
import java.util.AbstractList;
import java.util.ArrayList;
+import java.util.Collections;
import java.util.List;
import java.util.concurrent.Callable;
@@ -9,6 +12,7 @@ public abstract class LazyInitializedList<ElementType> extends AbstractList<Elem
private volatile List<ElementType> list;
+ @NonNull
private List<ElementType> getList() {
if (list == null) {
synchronized(this) {
@@ -20,6 +24,10 @@ public abstract class LazyInitializedList<ElementType> extends AbstractList<Elem
} catch (final Exception e) {
Log.e("LazyInitializedList.getList", e);
}
+ if (list == null) {
+ Log.e("LazyInitializedList.getList: using an empty list as a fallback");
+ list = Collections.emptyList();
+ }
}
}
return list;