Fix for Issue 162.
This commit is contained in:
parent
496ee57897
commit
1080b6c249
@ -206,7 +206,8 @@ dtStatus dtNavMesh::init(const dtNavMeshParams* params)
|
|||||||
// Init ID generator values.
|
// Init ID generator values.
|
||||||
m_tileBits = dtIlog2(dtNextPow2((unsigned int)params->maxTiles));
|
m_tileBits = dtIlog2(dtNextPow2((unsigned int)params->maxTiles));
|
||||||
m_polyBits = dtIlog2(dtNextPow2((unsigned int)params->maxPolys));
|
m_polyBits = dtIlog2(dtNextPow2((unsigned int)params->maxPolys));
|
||||||
m_saltBits = 32 - m_tileBits - m_polyBits;
|
// Only allow 31 salt bits, since the salt mask is calculated using 32bit uint and it will overflow.
|
||||||
|
m_saltBits = dtMin((unsigned int)31, 32 - m_tileBits - m_polyBits);
|
||||||
if (m_saltBits < 10)
|
if (m_saltBits < 10)
|
||||||
return DT_FAILURE | DT_INVALID_PARAM;
|
return DT_FAILURE | DT_INVALID_PARAM;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user