Core/Maps: Fix a possible crash in ObjectGridStoper:Visit

Dump found here: http://pastebin.com/2GZ3t5v4
This commit is contained in:
Machiavelli
2011-01-13 21:33:56 +01:00
parent bd85914d92
commit 57ee357c02

View File

@@ -280,13 +280,13 @@ ObjectGridStoper::Visit(CreatureMapType &m)
// stop any fights at grid de-activation and remove dynobjects created at cast by creatures
for (CreatureMapType::iterator iter=m.begin(); iter != m.end(); ++iter)
{
iter->getSource()->RemoveAllDynObjects();
if (iter->getSource()->isInCombat())
{
iter->getSource()->CombatStop();
iter->getSource()->DeleteThreatList();
iter->getSource()->AI()->EnterEvadeMode();
iter->getSource()->AI()->EnterEvadeMode(); // Calls RemoveAllAuras
}
iter->getSource()->RemoveAllDynObjects(); // Calls RemoveFromWorld, needs to be after RemoveAllAuras or we invalidate the Owner pointer of the aura
}
}