*Fix a crash bug about dynobj.
--HG-- branch : trunk
This commit is contained in:
+3
-3
@@ -4432,7 +4432,7 @@ void Unit::RemoveAurasDueToSpellBySteal(uint32 spellId, uint64 casterGUID, Unit
|
|||||||
{
|
{
|
||||||
int32 basePoints = aur->GetBasePoints();
|
int32 basePoints = aur->GetBasePoints();
|
||||||
// construct the new aura for the attacker
|
// construct the new aura for the attacker
|
||||||
Aura * new_aur = CreateAura(aur->GetSpellProto(), aur->GetEffIndex(), &basePoints, stealer);
|
Aura * new_aur = CreateAura(aur->GetSpellProto(), aur->GetEffIndex(), NULL/*&basePoints*/, stealer);
|
||||||
if(!new_aur)
|
if(!new_aur)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
@@ -4808,7 +4808,7 @@ DynamicObject * Unit::GetDynObject(uint32 spellId, uint32 effIndex)
|
|||||||
{
|
{
|
||||||
for (DynObjectGUIDs::iterator i = m_dynObjGUIDs.begin(); i != m_dynObjGUIDs.end();)
|
for (DynObjectGUIDs::iterator i = m_dynObjGUIDs.begin(); i != m_dynObjGUIDs.end();)
|
||||||
{
|
{
|
||||||
DynamicObject* dynObj = ObjectAccessor::GetDynamicObject(*this,*m_dynObjGUIDs.begin());
|
DynamicObject* dynObj = ObjectAccessor::GetDynamicObject(*this, *i);
|
||||||
if(!dynObj)
|
if(!dynObj)
|
||||||
{
|
{
|
||||||
i = m_dynObjGUIDs.erase(i);
|
i = m_dynObjGUIDs.erase(i);
|
||||||
@@ -4826,7 +4826,7 @@ DynamicObject * Unit::GetDynObject(uint32 spellId)
|
|||||||
{
|
{
|
||||||
for (DynObjectGUIDs::iterator i = m_dynObjGUIDs.begin(); i != m_dynObjGUIDs.end();)
|
for (DynObjectGUIDs::iterator i = m_dynObjGUIDs.begin(); i != m_dynObjGUIDs.end();)
|
||||||
{
|
{
|
||||||
DynamicObject* dynObj = ObjectAccessor::GetDynamicObject(*this,*m_dynObjGUIDs.begin());
|
DynamicObject* dynObj = ObjectAccessor::GetDynamicObject(*this, *i);
|
||||||
if(!dynObj)
|
if(!dynObj)
|
||||||
{
|
{
|
||||||
i = m_dynObjGUIDs.erase(i);
|
i = m_dynObjGUIDs.erase(i);
|
||||||
|
|||||||
Reference in New Issue
Block a user