aEpsT=Precision::PConfusion();
//
Geom2dHatch_Intersector aIntr(aTolArcIntr, aTolTangfIntr);
- pHatcher=new Geom2dHatch_Hatcher(aIntr,
- aTolHatch2D, aTolHatch3D,
- Standard_True, Standard_False);
-
+ pHatcher=(Geom2dHatch_Hatcher*)
+ myAllocator->Allocate(sizeof(Geom2dHatch_Hatcher));
+ new (pHatcher) Geom2dHatch_Hatcher(aIntr,
+ aTolHatch2D, aTolHatch3D,
+ Standard_True, Standard_False);
//
aFF=aF;
aFF.Orientation(TopAbs_FORWARD);
IntTools_SurfaceRangeLocalizeData* pSData;
//
if (!myProjSDataMap.IsBound(aF)) {
- pSData=new IntTools_SurfaceRangeLocalizeData
+ pSData=(IntTools_SurfaceRangeLocalizeData*)
+ myAllocator->Allocate(sizeof(IntTools_SurfaceRangeLocalizeData));
+ new (pSData) IntTools_SurfaceRangeLocalizeData
(3,
3,
10. * Precision::PConfusion(),
--- /dev/null
+puts "========"
+puts "OCC26616"
+puts "========"
+puts ""
+############################################
+# Memory leak in IntTools_Context::Hatcher
+############################################
+
+restore [locate_data_file OCC26635_t0.brep] t0
+restore [locate_data_file OCC26635_t1.brep] t1
+bfuse res t0 t1
+set m0 [meminfo w]
+repeat 10 {bfuse res t0 t1}
+set m1 [meminfo w]
+if {[expr {$m1 - $m0}] > 1048576} {
+ puts "ERROR: OCC26616 is reproduced. Memory leak has been detected."
+}