Fix SEGV write in Assimp::SortByPTypeProcess::Execute (#6318)
* Fix OOB Write in Assimp::SortByPTypeProcess::Execute
This commit is contained in:
@@ -188,12 +188,15 @@ void SortByPTypeProcess::Execute(aiScene *pScene) {
|
||||
|
||||
unsigned int numPolyVerts = 0;
|
||||
for (; pFirstFace != pLastFace; ++pFirstFace) {
|
||||
if (pFirstFace->mNumIndices <= 3)
|
||||
if (pFirstFace->mNumIndices >= 1 && pFirstFace->mNumIndices <= 3)
|
||||
++aiNumPerPType[pFirstFace->mNumIndices - 1];
|
||||
else {
|
||||
++aiNumPerPType[3];
|
||||
numPolyVerts += pFirstFace->mNumIndices;
|
||||
}
|
||||
if (pFirstFace->mNumIndices == 0) {
|
||||
ASSIMP_LOG_WARN("Face with 0 indices treated as polygon");
|
||||
}
|
||||
}
|
||||
|
||||
VertexWeightTable *avw = ComputeVertexBoneWeightTable(mesh);
|
||||
|
||||
Reference in New Issue
Block a user