[10378] Avoid double lookup member slot in guild operations.

Also more wide use ObjectGuid in guild code
and fixed some uint32->uint64 guid assigns.
This commit is contained in:
VladimirMangos 2010-08-19 07:35:43 +04:00
parent f2406c1962
commit 9b3d37f0cf
9 changed files with 189 additions and 190 deletions

View file

@ -839,7 +839,12 @@ void WorldSession::HandleTurnInPetitionOpcode(WorldPacket & recv_data)
for(uint8 i = 0; i < signs; ++i)
{
Field* fields = result->Fetch();
guild->AddMember(fields[0].GetUInt64(), guild->GetLowestRank());
ObjectGuid signguid = ObjectGuid(HIGHGUID_PLAYER, fields[0].GetUInt32());
if (signguid.IsEmpty())
continue;
guild->AddMember(signguid, guild->GetLowestRank());
result->NextRow();
}
}