From ef8076b626ad4300dbd51fd85da01a0e62f0c5bb Mon Sep 17 00:00:00 2001 From: Hans Mackowiak Date: Wed, 21 Apr 2021 17:34:47 +0200 Subject: [PATCH] GameEntityCounterTable: fix NPE and filterToRemove --- .../src/main/java/forge/game/GameEntityCounterTable.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/forge-game/src/main/java/forge/game/GameEntityCounterTable.java b/forge-game/src/main/java/forge/game/GameEntityCounterTable.java index 11970f36fa7..2b881bd9437 100644 --- a/forge-game/src/main/java/forge/game/GameEntityCounterTable.java +++ b/forge-game/src/main/java/forge/game/GameEntityCounterTable.java @@ -41,7 +41,11 @@ public class GameEntityCounterTable extends ForwardingTable, Ga public int get(Player putter, GameEntity object, CounterType type) { Optional o = Optional.fromNullable(putter); - return ObjectUtils.firstNonNull(get(o, object).get(type), 0); + Map map = get(o, object); + if (map == null || !map.containsKey(type)) { + return 0; + } + return ObjectUtils.firstNonNull(map.get(type), 0); } public int totalValues() { @@ -59,7 +63,7 @@ public class GameEntityCounterTable extends ForwardingTable, Ga */ public Map filterToRemove(GameEntity ge) { Map result = Maps.newHashMap(); - if (!containsRow(ge)) { + if (!containsColumn(ge)) { result.putAll(ge.getCounters()); return result; }