forked from mirror/openmw-tes3mp
fix memory leak in AISequence
This commit is contained in:
parent
15d946415e
commit
61707694e8
1 changed files with 4 additions and 0 deletions
|
@ -67,8 +67,11 @@ bool MWMechanics::AiSequence::getCombatTarget(std::string &targetActorId) const
|
||||||
void MWMechanics::AiSequence::stopCombat()
|
void MWMechanics::AiSequence::stopCombat()
|
||||||
{
|
{
|
||||||
while (getTypeId() == AiPackage::TypeIdCombat)
|
while (getTypeId() == AiPackage::TypeIdCombat)
|
||||||
|
{
|
||||||
|
delete *mPackages.begin();
|
||||||
mPackages.erase (mPackages.begin());
|
mPackages.erase (mPackages.begin());
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
bool MWMechanics::AiSequence::isPackageDone() const
|
bool MWMechanics::AiSequence::isPackageDone() const
|
||||||
{
|
{
|
||||||
|
@ -83,6 +86,7 @@ void MWMechanics::AiSequence::execute (const MWWorld::Ptr& actor,float duration)
|
||||||
{
|
{
|
||||||
if (mPackages.front()->execute (actor,duration))
|
if (mPackages.front()->execute (actor,duration))
|
||||||
{
|
{
|
||||||
|
delete *mPackages.begin();
|
||||||
mPackages.erase (mPackages.begin());
|
mPackages.erase (mPackages.begin());
|
||||||
mDone = true;
|
mDone = true;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue