Skip to content
Snippets Groups Projects
Commit 9fc2a6c6 authored by Peter Karasev's avatar Peter Karasev Committed by Kitware Robot
Browse files

Merge topic 'OBJImporter_MemoryLeaks'


53161772 COMP: Memory leak in vtkOBJImporter

Acked-by: default avatarKitware Robot <kwrobot@kitware.com>
Merge-request: !133
parents 6f4d305e 53161772
No related branches found
No related tags found
No related merge requests found
......@@ -132,7 +132,13 @@ const char* vtkOBJImporter::GetTexturePath( ) const
struct vtkOBJImportedPolyDataWithMaterial
{
~vtkOBJImportedPolyDataWithMaterial() { delete mtlProperties; }
~vtkOBJImportedPolyDataWithMaterial()
{
if (mtlProperties)
{
delete mtlProperties;
}
}
vtkOBJImportedPolyDataWithMaterial()
{ // initialize some structures to store the file contents in
points = vtkSmartPointer<vtkPoints>::New();
......@@ -198,8 +204,13 @@ vtkOBJPolyDataProcessor::~vtkOBJPolyDataProcessor()
{
for( size_t k=0; k < poly_list.size(); k++)
{
delete poly_list[k];
poly_list[k] = NULL;
if (poly_list[k]->mtlProperties)
{
delete poly_list[k]->mtlProperties;
poly_list[k]->mtlProperties = NULL;
}
delete poly_list[k];
poly_list[k] = NULL;
}
}
......@@ -338,6 +349,10 @@ int vtkOBJPolyDataProcessor::RequestData(
{
std::string mtlname_k(parsedMTLs[k]->name);
poly_list[k]->materialName = mtlname_k;
if (poly_list[k]->mtlProperties)
{
delete poly_list[k]->mtlProperties;
}
poly_list[k]->mtlProperties= parsedMTLs[k];
mtlName_to_mtlData[mtlname_k] = parsedMTLs[k];
mtlName_to_Actor[mtlname_k] = poly_list[k];
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment