diff --git a/forge-gui-mobile/src/forge/screens/match/views/VCardDisplayArea.java b/forge-gui-mobile/src/forge/screens/match/views/VCardDisplayArea.java index fb612c4f86d..e046a03fc7d 100644 --- a/forge-gui-mobile/src/forge/screens/match/views/VCardDisplayArea.java +++ b/forge-gui-mobile/src/forge/screens/match/views/VCardDisplayArea.java @@ -81,21 +81,21 @@ public abstract class VCardDisplayArea extends VDisplayArea implements ActivateH //support adding card panel and attached panels to display area recursively private void addCardPanelToDisplayArea(CardAreaPanel cardPanel) { - List attachedPanels = cardPanel.getAttachedPanels(); - if (!attachedPanels.isEmpty()) { - for (int i = attachedPanels.size() - 1; i >= 0; i--) { - addCardPanelToDisplayArea(attachedPanels.get(i)); + do { + List attachedPanels = cardPanel.getAttachedPanels(); + if (!attachedPanels.isEmpty()) { + for (int i = attachedPanels.size() - 1; i >= 0; i--) { + addCardPanelToDisplayArea(attachedPanels.get(i)); + } } - } - if (isVisible()) { //only set display area for card if area is visible - cardPanel.displayArea = this; - } - add(cardPanel); + if (isVisible()) { //only set display area for card if area is visible + cardPanel.displayArea = this; + } + add(cardPanel); - if (cardPanel.getNextPanelInStack() != null) { - addCardPanelToDisplayArea(cardPanel.getNextPanelInStack()); - } + cardPanel = cardPanel.getNextPanelInStack(); + } while (cardPanel != null); } public final void removeCardPanel(final CardAreaPanel fromPanel) {