diff --git a/Mage/src/main/java/mage/game/stack/SpellStack.java b/Mage/src/main/java/mage/game/stack/SpellStack.java index 1cbd03da71ef..f040f6988252 100644 --- a/Mage/src/main/java/mage/game/stack/SpellStack.java +++ b/Mage/src/main/java/mage/game/stack/SpellStack.java @@ -81,7 +81,9 @@ public boolean counter(UUID objectId, Ability source, Game game, PutCards putCar counteredObjectName = "Ability (" + stackObject.getStackAbility().getRule(targetSourceName) + ") of " + targetSourceName; } if (!game.replaceEvent(GameEvent.getEvent(GameEvent.EventType.COUNTER, objectId, source, stackObject.getControllerId()))) { - if (!(stackObject instanceof Spell)) { // spells are removed from stack by the card movement + // spells are removed from stack by the card movement + if (!(stackObject instanceof Spell) + || stackObject.isCopy()) { // ensure that copies of stackobjects have their history recorded ie: Swan Song this.remove(stackObject, game); game.rememberLKI(Zone.STACK, stackObject); }