0026625: Possible wrong use of vtkSmartPointer<T> in IVtkVTK_ShapeData.cxx
[occt.git] / src / IVtkVTK / IVtkVTK_ShapeData.cxx
index 5f7e4c5..258cee1 100644 (file)
@@ -33,17 +33,17 @@ const char* const IVtkVTK_ShapeData::ARRNAME_MESH_TYPES   = "MESH_TYPES";
 // Purpose  : 
 //================================================================
 IVtkVTK_ShapeData::IVtkVTK_ShapeData()
- : myPolyData( vtkPolyData::New() )
 {
+  myPolyData = vtkSmartPointer<vtkPolyData>::New();
   myPolyData->Allocate();
   myPolyData->SetPoints (vtkPoints::New());
 
-  mySubShapeIDs = vtkIdTypeArray::New();
+  mySubShapeIDs = vtkSmartPointer<vtkIdTypeArray>::New();
   mySubShapeIDs->SetName (IVtkVTK_ShapeData::ARRNAME_SUBSHAPE_IDS);
   mySubShapeIDs->SetNumberOfComponents (1);
   myPolyData->GetCellData()->AddArray (mySubShapeIDs);
 
-  myMeshTypes = vtkIdTypeArray::New();
+  myMeshTypes = vtkSmartPointer<vtkIdTypeArray>::New();
   myMeshTypes->SetName (IVtkVTK_ShapeData::ARRNAME_MESH_TYPES);
   myMeshTypes->SetNumberOfComponents (1);
   myPolyData->GetCellData()->AddArray (myMeshTypes);