Sfoglia il codice sorgente

Bugfix: On error during mesh creation, the tree was double deleted

Jorrit Rouwe 8 mesi fa
parent
commit
0f45bf5b1b
1 ha cambiato i file con 1 aggiunte e 2 eliminazioni
  1. 1 2
      Jolt/Physics/Collision/Shape/MeshShape.cpp

+ 1 - 2
Jolt/Physics/Collision/Shape/MeshShape.cpp

@@ -195,7 +195,7 @@ MeshShape::MeshShape(const MeshShapeSettings &inSettings, ShapeResult &outResult
 	// Build tree
 	AABBTreeBuilder builder(splitter, inSettings.mMaxTrianglesPerLeaf);
 	AABBTreeBuilderStats builder_stats;
-	AABBTreeBuilder::Node *root = builder.Build(builder_stats);
+	const AABBTreeBuilder::Node *root = builder.Build(builder_stats);
 
 	// Convert to buffer
 	AABBTreeToBuffer<TriangleCodec, NodeCodec> buffer;
@@ -203,7 +203,6 @@ MeshShape::MeshShape(const MeshShapeSettings &inSettings, ShapeResult &outResult
 	if (!buffer.Convert(builder.GetTriangles(), builder.GetNodes(), inSettings.mTriangleVertices, root, inSettings.mPerTriangleUserData, error))
 	{
 		outResult.SetError(error);
-		delete root;
 		return;
 	}