diff --git a/projects/mtg/bin/Res/test/_tests.txt b/projects/mtg/bin/Res/test/_tests.txt index bfe45b149..dbebf87bc 100644 --- a/projects/mtg/bin/Res/test/_tests.txt +++ b/projects/mtg/bin/Res/test/_tests.txt @@ -190,6 +190,7 @@ fault_line.txt fire_tempest.txt fists_of_ironwood.txt flagstones.txt +flame_fusillade_i265.txt flare.txt fledgling_imp.txt fledgling_imp2.txt diff --git a/projects/mtg/bin/Res/test/bugs/flame_fusillade_i265.txt b/projects/mtg/bin/Res/test/flame_fusillade_i265.txt similarity index 100% rename from projects/mtg/bin/Res/test/bugs/flame_fusillade_i265.txt rename to projects/mtg/bin/Res/test/flame_fusillade_i265.txt diff --git a/projects/mtg/include/AllAbilities.h b/projects/mtg/include/AllAbilities.h index f7ea6778a..45e2c4edd 100644 --- a/projects/mtg/include/AllAbilities.h +++ b/projects/mtg/include/AllAbilities.h @@ -447,13 +447,15 @@ public: } ~GenericTargetAbility(){ - if (isClone) SAFE_DELETE(ability); + SAFE_DELETE(ability); } GenericTargetAbility * clone() const{ GenericTargetAbility * a = NEW GenericTargetAbility(*this); a->ability = ability->clone(); - a->isClone = 1; + a->cost = NEW ManaCost(); + a->cost->copy(cost); + if (tc) a->tc = tc->clone(); return a; } diff --git a/projects/mtg/src/CardDescriptor.cpp b/projects/mtg/src/CardDescriptor.cpp index 2f092876d..8c2a2d15d 100644 --- a/projects/mtg/src/CardDescriptor.cpp +++ b/projects/mtg/src/CardDescriptor.cpp @@ -12,6 +12,10 @@ int CardDescriptor::init(){ attacker = 0; defenser = NULL; banding = NULL; + //Remove unnecessary pointers + SAFE_DELETE(untapBlockers); + SAFE_DELETE(counters); + SAFE_DELETE(previous); return result; }