mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-19 12:18:00 +00:00
Prevent crashes from calling CardView.getCards and assumming non-null
This commit is contained in:
@@ -48,7 +48,7 @@ public class ZoneAction extends ForgeAction {
|
||||
@Override
|
||||
public void actionPerformed(final ActionEvent e) {
|
||||
final Iterable<CardView> choices = this.getCardsAsIterable();
|
||||
if (!choices.iterator().hasNext()) {
|
||||
if (choices == null || !choices.iterator().hasNext()) {
|
||||
GuiChoose.reveal(this.title, "no cards");
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -598,7 +598,13 @@ public class PlayArea extends CardPanelContainer implements CardPanelMouseListen
|
||||
private void recalculateCardPanels(final PlayerView model, final ZoneType zone) {
|
||||
final List<CardView> modelCopy;
|
||||
synchronized (model) {
|
||||
modelCopy = Lists.newArrayList(model.getCards(zone));
|
||||
Iterable<CardView> cards = model.getCards(zone);
|
||||
if (cards != null) {
|
||||
modelCopy = Lists.newArrayList(cards);
|
||||
}
|
||||
else {
|
||||
modelCopy = Lists.newArrayList();
|
||||
}
|
||||
}
|
||||
|
||||
final List<CardView> oldCards = Lists.newArrayList();
|
||||
@@ -620,7 +626,8 @@ public class PlayArea extends CardPanelContainer implements CardPanelMouseListen
|
||||
|
||||
if (toDelete.size() == getCardPanels().size()) {
|
||||
clear();
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
for (final CardView card : toDelete) {
|
||||
removeCardPanel(getCardPanel(card.getId()));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user