From dba3c881e17fb653daeb7a7c7b57a4e77908b85c Mon Sep 17 00:00:00 2001
From: LevelX2 <ludwig.hirth@online.de>
Date: Thu, 25 Dec 2014 11:31:48 +0100
Subject: [PATCH] * Fixed problem with CopyEffect and fixed MisdirectionTest.

---
 .../java/org/mage/test/cards/single/MisdirectionTest.java     | 4 ++--
 Mage/src/mage/abilities/effects/common/CopyEffect.java        | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/Mage.Tests/src/test/java/org/mage/test/cards/single/MisdirectionTest.java b/Mage.Tests/src/test/java/org/mage/test/cards/single/MisdirectionTest.java
index b9a534ef03..737f8cd5f8 100644
--- a/Mage.Tests/src/test/java/org/mage/test/cards/single/MisdirectionTest.java
+++ b/Mage.Tests/src/test/java/org/mage/test/cards/single/MisdirectionTest.java
@@ -60,14 +60,14 @@ public class MisdirectionTest extends CardTestPlayerBase {
         
         castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerA, "Rakshasa's Secret", playerB);
         castSpell(1, PhaseStep.PRECOMBAT_MAIN, playerB, "Misdirection", "Rakshasa's Secret", "Rakshasa's Secret");
-        addTarget(playerA, playerA); // only possible target is player A
+        addTarget(playerB, playerA); // only legal target is player B as opponent - so player A should not be allowed
         
         setStopAt(1, PhaseStep.BEGIN_COMBAT);
         execute();
 
         assertGraveyardCount(playerA, "Rakshasa's Secret", 1);
         assertGraveyardCount(playerB, "Misdirection", 1);
-        assertHandCount(playerB, "Silvercoat Lion", 2);
+        assertHandCount(playerB, "Silvercoat Lion", 0);
 
     }
 }
\ No newline at end of file
diff --git a/Mage/src/mage/abilities/effects/common/CopyEffect.java b/Mage/src/mage/abilities/effects/common/CopyEffect.java
index 3098fb03fb..c9eeb76f35 100644
--- a/Mage/src/mage/abilities/effects/common/CopyEffect.java
+++ b/Mage/src/mage/abilities/effects/common/CopyEffect.java
@@ -80,13 +80,13 @@ public class CopyEffect extends ContinuousEffectImpl {
     public void init(Ability source, Game game) {
         super.init(source, game);
         if (affectedObjectsSet) {
-            affectedObjectList.add(new MageObjectReference(source.getSourceId(), game));
+            affectedObjectList.add(new MageObjectReference(sourceId, game));
         }
     }
 
     @Override
     public boolean apply(Game game, Ability source) {
-        Permanent permanent = game.getPermanent(this.sourceId);
+        Permanent permanent;
         if (affectedObjectsSet) {
             permanent = affectedObjectList.get(0).getPermanent(game);
         } else {