diff options
| author | Machiavelli <none@none> | 2010-09-19 17:37:59 +0200 |
|---|---|---|
| committer | Machiavelli <none@none> | 2010-09-19 17:37:59 +0200 |
| commit | 188165b7bffd48564e82673f8912119fa2ca6f75 (patch) | |
| tree | c4c2c22f737b2e168d3d99d17e1754a616d2b7f2 /src/server | |
| parent | 50f1e70151ba9b38ccc639880d0be5b206354cc3 (diff) | |
Core/ObjectMgr: Fix another possible crash in guild loading. This should be the last of them.
--HG--
branch : trunk
Diffstat (limited to 'src/server')
| -rw-r--r-- | src/server/game/Globals/ObjectMgr.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp index f23e8b776ad..989f7a1a8ed 100644 --- a/src/server/game/Globals/ObjectMgr.cpp +++ b/src/server/game/Globals/ObjectMgr.cpp @@ -3569,7 +3569,7 @@ void ObjectMgr::LoadGuildEvents(std::vector<Guild*>& GuildVector, QueryResult& r { Field *fields = result->Fetch(); uint32 guildid = fields[6].GetUInt32(); - if (guildid >= GuildVector.size()) + if (guildid >= GuildVector.size() || GuildVector[guildid] == NULL) return; if (!GuildVector[guildid]->m_GuildEventLogNextGuid) @@ -3600,7 +3600,7 @@ void ObjectMgr::LoadGuildBankEvents(std::vector<Guild*>& GuildVector, QueryResul Field *fields = result->Fetch(); uint32 logGuid = fields[0].GetUInt32(); uint32 guildid = fields[7].GetUInt32(); - if (guildid >= GuildVector.size()) + if (guildid >= GuildVector.size() || GuildVector[guildid] == NULL) return; uint8 TabId = fields[8].GetUInt8(); @@ -3611,12 +3611,12 @@ void ObjectMgr::LoadGuildBankEvents(std::vector<Guild*>& GuildVector, QueryResul if (TabId != GUILD_BANK_MONEY_LOGS_TAB) { - if(!GuildVector[guildid]->m_GuildBankEventLogNextGuid_Item[TabId]) + if (!GuildVector[guildid]->m_GuildBankEventLogNextGuid_Item[TabId]) GuildVector[guildid]->m_GuildBankEventLogNextGuid_Item[TabId] = logGuid; } else { - if(!GuildVector[guildid]->m_GuildBankEventLogNextGuid_Money) + if (!GuildVector[guildid]->m_GuildBankEventLogNextGuid_Money) GuildVector[guildid]->m_GuildBankEventLogNextGuid_Money = logGuid; } @@ -3669,7 +3669,7 @@ void ObjectMgr::LoadGuildBanks(std::vector<Guild*>& GuildVector, QueryResult& re Field *fields = result->Fetch(); uint32 TabId = fields[0].GetUInt32(); uint32 guildid = fields[4].GetUInt32(); - if (guildid >= GuildVector.size()) + if (guildid >= GuildVector.size() || GuildVector[guildid] == NULL) return; if (TabId < GuildVector[guildid]->GetPurchasedTabs()) @@ -3697,7 +3697,7 @@ void ObjectMgr::LoadGuildBanks(std::vector<Guild*>& GuildVector, QueryResult& re uint32 ItemGuid = itemfields[13].GetUInt32(); uint32 ItemEntry = itemfields[14].GetUInt32(); uint32 guildid = itemfields[15].GetUInt32(); - if (guildid >= GuildVector.size()) + if (guildid >= GuildVector.size() || GuildVector[guildid] == NULL) return; if (TabId >= GuildVector[guildid]->GetPurchasedTabs()) |
