diff options
| author | QAston <none@none> | 2009-03-21 19:33:50 +0100 |
|---|---|---|
| committer | QAston <none@none> | 2009-03-21 19:33:50 +0100 |
| commit | b6e8e8a21f84cf326c23fbbc4723a718ef822f65 (patch) | |
| tree | 9e1812e786c909280ce3816f7e7661f1df58813d /src/game/PetHandler.cpp | |
| parent | 5eda38d76a53b770698d53949324813a532c6473 (diff) | |
| parent | d0501ab3a12895ad35f009e1a8758aca090f95b5 (diff) | |
*Merge.
--HG--
branch : trunk
Diffstat (limited to 'src/game/PetHandler.cpp')
| -rw-r--r-- | src/game/PetHandler.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/game/PetHandler.cpp b/src/game/PetHandler.cpp index f6b6184a32a..a93d9961e85 100644 --- a/src/game/PetHandler.cpp +++ b/src/game/PetHandler.cpp @@ -63,9 +63,13 @@ void WorldSession::HandlePetAction( WorldPacket & recv_data ) if(pet->GetTypeId() == TYPEID_PLAYER && !(flag == ACT_COMMAND && spellid == COMMAND_ATTACK)) return; - for(ControlList::iterator itr = GetPlayer()->m_Controlled.begin(); itr != GetPlayer()->m_Controlled.end(); ++itr) - if((*itr)->GetEntry() == pet->GetEntry() && (*itr)->isAlive()) - HandlePetActionHelper(*itr, guid1, spellid, flag, guid2); + for(ControlList::iterator itr = GetPlayer()->m_Controlled.begin(); itr != GetPlayer()->m_Controlled.end();) + { + Unit *unit = *itr; + ++itr; + if(unit->GetEntry() == pet->GetEntry() && unit->isAlive()) + HandlePetActionHelper(unit, guid1, spellid, flag, guid2); + } } void WorldSession::HandlePetActionHelper(Unit *pet, uint64 guid1, uint16 spellid, uint16 flag, uint64 guid2) |
