diff --git a/src/main/java/forge/control/input/InputCleanup.java b/src/main/java/forge/control/input/InputCleanup.java index a8d30e9e8d2..5e8f98fddbb 100644 --- a/src/main/java/forge/control/input/InputCleanup.java +++ b/src/main/java/forge/control/input/InputCleanup.java @@ -18,6 +18,7 @@ package forge.control.input; import forge.Card; +import forge.FThreads; import forge.Singletons; import forge.game.GameState; import forge.game.player.Player; @@ -74,12 +75,15 @@ public class InputCleanup extends InputBase { /** {@inheritDoc} */ @Override public final void selectCard(final Card card) { - Zone zone = Singletons.getModel().getGame().getZoneOf(card); - if (zone.is(ZoneType.Hand, Singletons.getControl().getPlayer())) { - card.getController().discard(card, null); - if (Singletons.getModel().getGame().getStack().size() == 0) { - this.showMessage(); + Zone zone = game.getZoneOf(card); + if (!zone.is(ZoneType.Hand, Singletons.getControl().getPlayer())) + return; + + FThreads.invokeInNewThread(new Runnable() { + @Override + public void run() { + card.getController().discard(card, null); } - } - } // selectCard() + }, true); + } }