From dfbd43df118e822b4a3f1db9b5fbd0f250998c71 Mon Sep 17 00:00:00 2001 From: Evan Debenham Date: Sat, 5 Sep 2020 14:22:40 -0400 Subject: [PATCH] v0.9.0: added a couple safety checks to prevent crashes --- .../shatteredpixeldungeon/services/news/News.java | 14 ++++++++------ .../shatteredpixeldungeon/sprites/MobSprite.java | 2 +- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/services/news/News.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/services/news/News.java index 713a47ebb..aa52b118b 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/services/news/News.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/services/news/News.java @@ -70,23 +70,25 @@ public class News { private static ArrayList articles; - public static boolean articlesAvailable(){ + public static synchronized boolean articlesAvailable(){ return articles != null; } - public static ArrayList articles(){ + public static synchronized ArrayList articles(){ return new ArrayList<>(articles); } - public static int unreadArticles(Date lastRead){ + public static synchronized int unreadArticles(Date lastRead) { int unread = 0; - for (NewsArticle article : articles){ - if (article.date.after(lastRead)) unread++; + if (articles != null) { + for (NewsArticle article : articles) { + if (article.date.after(lastRead)) unread++; + } } return unread; } - public static void clearArticles(){ + public static synchronized void clearArticles(){ articles = null; lastCheck = null; } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/sprites/MobSprite.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/sprites/MobSprite.java index 597f1054d..466db1deb 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/sprites/MobSprite.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/sprites/MobSprite.java @@ -45,7 +45,7 @@ public class MobSprite extends CharSprite { super.onComplete( anim ); - if (anim == die) { + if (anim == die && parent != null) { parent.add( new AlphaTweener( this, 0, FADE_TIME ) { @Override protected void onComplete() {