mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-21 10:11:30 +00:00
Strange crash hack/workaround that occured on peq
This commit is contained in:
parent
7f7f99cbe3
commit
80242bd250
@ -561,6 +561,18 @@ bool Group::DelMember(Mob* oldmember,bool ignoresender)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* This may seem pointless but the case above does not cover the following situation:
|
||||||
|
* Group has Leader a, member b, member c
|
||||||
|
* b and c are out of zone
|
||||||
|
* a disconnects/quits
|
||||||
|
* b or c zone back in and disconnects/quits
|
||||||
|
* a is still "leader" from GetLeader()'s perspective and will crash the zone when we DelMember(b)
|
||||||
|
* Ultimately we should think up a better solution to this.
|
||||||
|
*/
|
||||||
|
if(oldmember == GetLeader()) {
|
||||||
|
SetLeader(nullptr);
|
||||||
|
}
|
||||||
|
|
||||||
ServerPacket* pack = new ServerPacket(ServerOP_GroupLeave, sizeof(ServerGroupLeave_Struct));
|
ServerPacket* pack = new ServerPacket(ServerOP_GroupLeave, sizeof(ServerGroupLeave_Struct));
|
||||||
ServerGroupLeave_Struct* gl = (ServerGroupLeave_Struct*)pack->pBuffer;
|
ServerGroupLeave_Struct* gl = (ServerGroupLeave_Struct*)pack->pBuffer;
|
||||||
gl->gid = GetID();
|
gl->gid = GetID();
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user