From 805d62bef109a4aa83d4c3221271d9eb14d0f70c Mon Sep 17 00:00:00 2001 From: VladimirMangos Date: Sun, 16 Jan 2011 18:38:31 +0300 Subject: [PATCH] [11016] Fixed crash at logout not in world guld member. --- src/game/Guild.cpp | 2 +- src/game/Player.h | 1 + src/shared/revision_nr.h | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/game/Guild.cpp b/src/game/Guild.cpp index fd3b38a47..a6b544d29 100644 --- a/src/game/Guild.cpp +++ b/src/game/Guild.cpp @@ -35,7 +35,7 @@ void MemberSlot::SetMemberStats(Player* player) Name = player->GetName(); Level = player->getLevel(); Class = player->getClass(); - ZoneId = player->GetZoneId(); + ZoneId = player->IsInWorld() ? player->GetZoneId() : player->GetCachedZoneId(); } void MemberSlot::UpdateLogoutTime() diff --git a/src/game/Player.h b/src/game/Player.h index 53583cb7f..cb7b6157b 100644 --- a/src/game/Player.h +++ b/src/game/Player.h @@ -1761,6 +1761,7 @@ class MANGOS_DLL_SPEC Player : public Unit void UpdatePvP(bool state, bool ovrride=false); void UpdateZone(uint32 newZone,uint32 newArea); void UpdateArea(uint32 newArea); + uint32 GetCachedZoneId() const { return m_zoneUpdateId; } void UpdateZoneDependentAuras(); void UpdateAreaDependentAuras(); // subzones diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index 93ca39e86..743d481ed 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "11015" + #define REVISION_NR "11016" #endif // __REVISION_NR_H__