fix(Core/Misc): Memleaks fixes. Part I. (#5546)

This commit is contained in:
UltraNix
2021-04-30 17:03:02 +02:00
committed by GitHub
parent 632883538c
commit adad43a15c
9 changed files with 51 additions and 37 deletions

View File

@@ -13,6 +13,15 @@
#include "Spell.h"
#include "Util.h"
template<class T>
RandomMovementGenerator<T>::~RandomMovementGenerator() { }
template<>
RandomMovementGenerator<Creature>::~RandomMovementGenerator()
{
delete _pathGenerator;
}
template<>
void RandomMovementGenerator<Creature>::_setRandomLocation(Creature* creature)
{

View File

@@ -34,6 +34,7 @@ public:
for (uint8 i = 0; i < RANDOM_POINTS_NUMBER; ++i)
_validPointsVector[RANDOM_POINTS_NUMBER].push_back(i);
}
~RandomMovementGenerator();
void _setRandomLocation(T*);
void DoInitialize(T*);

View File

@@ -29,7 +29,7 @@ class ChaseMovementGenerator : public MovementGeneratorMedium<T, ChaseMovementGe
public:
ChaseMovementGenerator(Unit* target, std::optional<ChaseRange> range = {}, std::optional<ChaseAngle> angle = {})
: TargetedMovementGeneratorBase(target), i_path(nullptr), i_recheckDistance(0), i_recalculateTravel(true), _range(range), _angle(angle) {}
~ChaseMovementGenerator() {}
~ChaseMovementGenerator() { delete i_path; }
MovementGeneratorType GetMovementGeneratorType() { return CHASE_MOTION_TYPE; }
@@ -65,7 +65,7 @@ class FollowMovementGenerator : public MovementGeneratorMedium<T, FollowMovement
public:
FollowMovementGenerator(Unit* target, float range, ChaseAngle angle)
: TargetedMovementGeneratorBase(target), i_path(nullptr), i_recheckDistance(0), i_recalculateTravel(true), _range(range), _angle(angle) {}
~FollowMovementGenerator() {}
~FollowMovementGenerator() { delete i_path; }
MovementGeneratorType GetMovementGeneratorType() { return FOLLOW_MOTION_TYPE; }