Skip to content

Commit 467f13f

Browse files
committed
fixed potential memory leak in ISPC scene setup
1 parent 470b9c2 commit 467f13f

2 files changed

Lines changed: 9 additions & 7 deletions

File tree

kernels/bvh/bvh.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -186,7 +186,7 @@ namespace embree
186186
{
187187
if (!stat) stat.reset(new BVHNStatistics<N>(this));
188188
Lock<MutexSys> lock(g_printMutex);
189-
std::cout << "BENCHMARK_BUILD " << dt << " " << double(numPrimitives)/dt << " " << stat->sah() << " " << stat->bytesUsed() << " BVH" << N << "<" << primTy.name << ">" << std::endl << std::flush;
189+
std::cout << "BENCHMARK_BUILD " << dt << " " << double(numPrimitives)/dt << " " << stat->sah() << " " << stat->bytesUsed() /* << " BVH" << N << "<" << primTy.name << ">"*/ << std::endl << std::flush;
190190
}
191191
}
192192

tutorials/common/tutorial/scene_device.cpp

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,8 @@ namespace embree
4848
}
4949

5050
ISPCTriangleMesh::~ISPCTriangleMesh () {
51-
delete[] positions;
51+
if (positions) delete[] positions;
52+
if (normals) delete[] normals;
5253
}
5354

5455
ISPCQuadMesh::ISPCQuadMesh (TutorialScene* scene_in, Ref<SceneGraph::QuadMeshNode> in)
@@ -73,8 +74,8 @@ namespace embree
7374
}
7475

7576
ISPCQuadMesh::~ISPCQuadMesh () {
76-
delete[] positions;
77-
}
77+
if (positions) delete[] positions;
78+
if (normals) delete[] normals; }
7879

7980
ISPCSubdivMesh::ISPCSubdivMesh (TutorialScene* scene_in, Ref<SceneGraph::SubdivMeshNode> in)
8081
: geom(SUBDIV_MESH), positions(nullptr), normals(nullptr)
@@ -128,9 +129,10 @@ namespace embree
128129

129130
ISPCSubdivMesh::~ISPCSubdivMesh ()
130131
{
131-
delete[] positions;
132-
delete[] subdivlevel;
133-
delete[] face_offsets;
132+
if (positions) delete[] positions;
133+
if (normals) delete[] normals;
134+
if (subdivlevel) delete[] subdivlevel;
135+
if (face_offsets) delete[] face_offsets;
134136
}
135137

136138
ISPCLineSegments::ISPCLineSegments (TutorialScene* scene_in, Ref<SceneGraph::LineSegmentsNode> in)

0 commit comments

Comments
 (0)