Jelajahi Sumber

Fix segfault caused by FBX file with missing face #2614

Gordon MacPherson 6 tahun lalu
induk
melakukan
c50a4d8ade
1 mengubah file dengan 5 tambahan dan 1 penghapusan
  1. 5 1
      code/FBX/FBXMeshGeometry.cpp

+ 5 - 1
code/FBX/FBXMeshGeometry.cpp

@@ -610,8 +610,12 @@ void MeshGeometry::ReadVertexDataMaterials(std::vector<int>& materials_out, cons
     const std::string& ReferenceInformationType)
 {
     const size_t face_count = m_faces.size();
-    ai_assert(face_count);
 
+    if(face_count == 0)
+    {
+        return;
+    }
+    
     // materials are handled separately. First of all, they are assigned per-face
     // and not per polyvert. Secondly, ReferenceInformationType=IndexToDirect
     // has a slightly different meaning for materials.