summaryrefslogtreecommitdiff
path: root/src/server/game/Spells/SpellInfo.h
diff options
context:
space:
mode:
authorsogladev <sogladev@gmail.com>2025-09-25 14:55:30 +0200
committerGitHub <noreply@github.com>2025-09-25 09:55:30 -0300
commit80e9265222d964e5371f5968216f07fd5a5eae49 (patch)
treed621382cf3af57e09d2ec3d92fbf69d9b9151612 /src/server/game/Spells/SpellInfo.h
parentd05213d85e64de06562eae2c64eb5d874947064d (diff)
Revert "fix(Core/Conditions): `ConditionList` use after free (#23006)" (#23023)
Diffstat (limited to 'src/server/game/Spells/SpellInfo.h')
-rw-r--r--src/server/game/Spells/SpellInfo.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/server/game/Spells/SpellInfo.h b/src/server/game/Spells/SpellInfo.h
index cabdb31587..534ad254a6 100644
--- a/src/server/game/Spells/SpellInfo.h
+++ b/src/server/game/Spells/SpellInfo.h
@@ -39,7 +39,6 @@ struct SpellRadiusEntry;
struct SpellEntry;
struct SpellCastTimesEntry;
struct Condition;
-typedef std::list<Condition*> ConditionList;
enum SpellCastTargetFlags
{
@@ -271,12 +270,12 @@ public:
uint32 ItemType;
uint32 TriggerSpell;
flag96 SpellClassMask;
- std::shared_ptr<ConditionList> ImplicitTargetConditions;
+ std::list<Condition*>* ImplicitTargetConditions;
SpellEffectInfo() : _spellInfo(nullptr), _effIndex(0), Effect(0), ApplyAuraName(0), Amplitude(0), DieSides(0),
RealPointsPerLevel(0), BasePoints(0), PointsPerComboPoint(0), ValueMultiplier(0), DamageMultiplier(0),
BonusMultiplier(0), MiscValue(0), MiscValueB(0), Mechanic(MECHANIC_NONE), RadiusEntry(nullptr), ChainTarget(0),
- ItemType(0), TriggerSpell(0), ImplicitTargetConditions() {}
+ ItemType(0), TriggerSpell(0), ImplicitTargetConditions(nullptr) {}
SpellEffectInfo(SpellEntry const* spellEntry, SpellInfo const* spellInfo, uint8 effIndex);
bool IsEffect() const;
@@ -404,6 +403,7 @@ public:
bool _requireCooldownInfo;
SpellInfo(SpellEntry const* spellEntry);
+ ~SpellInfo();
uint32 GetCategory() const;
bool HasEffect(SpellEffects effect) const;