mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2024-11-22 05:27:19 +00:00
Add null checks to all free calls to prevent crash on server close. (#709)
This commit is contained in:
parent
e6c7f744b5
commit
88f316bf93
@ -28,13 +28,13 @@ dNavMesh::dNavMesh(uint32_t zoneId) {
|
||||
dNavMesh::~dNavMesh() {
|
||||
// Clean up Recast information
|
||||
|
||||
rcFreeHeightField(m_Solid);
|
||||
rcFreeCompactHeightfield(m_CHF);
|
||||
rcFreeContourSet(m_CSet);
|
||||
rcFreePolyMesh(m_PMesh);
|
||||
rcFreePolyMeshDetail(m_PMDMesh);
|
||||
dtFreeNavMesh(m_NavMesh);
|
||||
dtFreeNavMeshQuery(m_NavQuery);
|
||||
if(m_Solid) rcFreeHeightField(m_Solid);
|
||||
if (m_CHF) rcFreeCompactHeightfield(m_CHF);
|
||||
if (m_CSet) rcFreeContourSet(m_CSet);
|
||||
if (m_PMesh) rcFreePolyMesh(m_PMesh);
|
||||
if (m_PMDMesh) rcFreePolyMeshDetail(m_PMDMesh);
|
||||
if (m_NavMesh) dtFreeNavMesh(m_NavMesh);
|
||||
if (m_NavQuery) dtFreeNavMeshQuery(m_NavQuery);
|
||||
|
||||
if (m_Ctx) delete m_Ctx;
|
||||
if (m_Triareas) delete[] m_Triareas;
|
||||
|
@ -32,10 +32,11 @@ dpWorld::~dpWorld() {
|
||||
m_Grid = nullptr;
|
||||
}
|
||||
|
||||
m_NavMesh->~dNavMesh();
|
||||
if (m_NavMesh) {
|
||||
delete m_NavMesh;
|
||||
m_NavMesh = nullptr;
|
||||
}
|
||||
}
|
||||
|
||||
void dpWorld::StepWorld(float deltaTime) {
|
||||
if (m_Grid) {
|
||||
|
@ -42,5 +42,5 @@ private:
|
||||
std::vector<dpEntity*> m_StaticEntities;
|
||||
std::vector<dpEntity*> m_DynamicEntites;
|
||||
|
||||
dNavMesh* m_NavMesh;
|
||||
dNavMesh* m_NavMesh = nullptr;
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user