diff options
| author | leak <leakzx@googlemail.com> | 2011-02-22 23:47:32 +0100 |
|---|---|---|
| committer | leak <leakzx@googlemail.com> | 2011-02-22 23:49:57 +0100 |
| commit | b27735b590ed91db702f2a21085fef05b804e4d8 (patch) | |
| tree | c4ec58ead342b8374993338a414622b1fcd06747 /src/server/game/Groups/Group.cpp | |
| parent | 44fc35bb07e72e9991b930692ed5f84a397a4807 (diff) | |
Core/Groups: Reuse group guids to stop endless growth
Diffstat (limited to 'src/server/game/Groups/Group.cpp')
| -rwxr-xr-x | src/server/game/Groups/Group.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/server/game/Groups/Group.cpp b/src/server/game/Groups/Group.cpp index 2f7ae3c4d5f..a118e1c1837 100755 --- a/src/server/game/Groups/Group.cpp +++ b/src/server/game/Groups/Group.cpp @@ -635,6 +635,12 @@ void Group::Disband(bool hideDestroy /* = false */) CharacterDatabase.CommitTransaction(trans); ResetInstances(INSTANCE_RESET_GROUP_DISBAND, false, NULL); ResetInstances(INSTANCE_RESET_GROUP_DISBAND, true, NULL); + + // If the deleted group guid is lower than the one we have stored for the next group creation, + // use this one instead. + if (lowguid < sObjectMgr->GetNextGroupGuid()) + sObjectMgr->SetNextGroupGuid(lowguid); + } sObjectMgr->RemoveGroup(this); |
