From 09afaaf9ab9788296726ad602240a1be5220cb00 Mon Sep 17 00:00:00 2001 From: LevelX2 Date: Mon, 30 Jun 2014 17:36:09 +0200 Subject: [PATCH] * Prevent undo if game has already ended. Probably related to #433. --- Mage/src/mage/game/GameImpl.java | 2 +- Mage/src/mage/players/PlayerImpl.java | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/Mage/src/mage/game/GameImpl.java b/Mage/src/mage/game/GameImpl.java index 1f6e48eb876..9982374c224 100644 --- a/Mage/src/mage/game/GameImpl.java +++ b/Mage/src/mage/game/GameImpl.java @@ -528,7 +528,7 @@ public abstract class GameImpl implements Game, Serializable { @Override public void restoreState(int bookmark) { - if (!simulation) { + if (!simulation && !this.hasEnded()) { // if player left or game is over no undo is possible - this could lead to wrong winner if (bookmark != 0) { if (!savedStates.contains(bookmark - 1)) { throw new UnsupportedOperationException("It was not possible to do the requested undo operation (bookmark " + (bookmark -1) + " does not exist)"); diff --git a/Mage/src/mage/players/PlayerImpl.java b/Mage/src/mage/players/PlayerImpl.java index 88d1ec071aa..c47e94ffe2b 100644 --- a/Mage/src/mage/players/PlayerImpl.java +++ b/Mage/src/mage/players/PlayerImpl.java @@ -754,9 +754,7 @@ public abstract class PlayerImpl implements Player, Serializable { resetStoredBookmark(game); return true; } - if (!game.hasEnded()) { // if player left or game is over no undo is possible - this could lead to wrong winner - game.restoreState(bookmark); - } + game.restoreState(bookmark); } } return false;