Crash: Allocation Points
Moderators: Community Managers, Developers
- John Adams
- Retired
- Posts: 4582
- Joined: Wed Aug 28, 2013 9:40 am
- Location: Phoenix, AZ.
- Contact:
Crash: Allocation Points
I have to give it to our testers, they are certainly finding all the bugs. Too bad all these crashes are at the height of the day when there are so many people online.
Stack:
Fixed by checking if 'character' is null
The pattern I'm seeing (besides people forgetting to do any pointer safety checks) is null character objects, again. They probably always existed, but are showing up more often now because so many people are online on the weekends testing things out.
Stack:
Code: Select all
WorldServer.exe!WorldCharacter::GetAdventurePoints() Line 324 C++
> WorldServer.exe!ChunkServer::HandleClientAllocationPoints(std::shared_ptr<Client> & client, PacketStruct * packet) Line 5606 C++
WorldServer.exe!ChunkServer::ProcessPackets() Line 864 C++
WorldServer.exe!ChunkPacketThread(void * data) Line 121 C++
WorldServer.exe!ThreadRun(void * arg) Line 77 C++
WorldServer.exe!_callthreadstart() Line 255 C
WorldServer.exe!_threadstart(void * ptd) Line 239 C
kernel32.dll!7716337a() Unknown
[Frames below may be incorrect and/or missing, no symbols loaded for kernel32.dll]
ntdll.dll!77c492e2() Unknown
ntdll.dll!77c492b5() Unknown
Code: Select all
void ChunkServer::HandleClientAllocationPoints(shared_ptr<Client> &client, PacketStruct *packet) {
shared_ptr<WorldCharacter> character = client->GetCharacter();
+ if (!character) {
+ LogError(LOG_CHARACTER, 0, "Character object NULL");
+ return;
+ }