Salome HOME
Mantis issue 0020998: EDF 1572 GEOM: Some limitations to the PipeTShape.
[modules/geom.git] / src / GEOMImpl / GEOMImpl_FillingDriver.cxx
index 521589d5ba761e3269659521dce143641aa9d1ad..c70a3b04f4483c3a9f20f24d25f9217c06965aef 100644 (file)
@@ -31,6 +31,7 @@
 #include <BRepAlgo.hxx>
 #include <BRepBuilderAPI_MakeFace.hxx>
 #include <BRep_Builder.hxx>
+#include <BRepBuilderAPI_Copy.hxx>
 
 #include <TopAbs.hxx>
 #include <TopoDS.hxx>
@@ -102,7 +103,12 @@ Standard_Integer GEOMImpl_FillingDriver::Execute(TFunction_Logbook& log) const
   GEOMImpl_IFilling IF (aFunction);
   Handle(GEOM_Function) aShapeFunction = IF.GetShape();
   if (aShapeFunction.IsNull()) return 0;
-  TopoDS_Shape aShape = aShapeFunction->GetValue();
+  TopoDS_Shape aShape;
+
+  BRepBuilderAPI_Copy Copy(aShapeFunction->GetValue());
+  if( Copy.IsDone() )
+    aShape = Copy.Shape();
+
   if (aShape.IsNull() || aShape.ShapeType() != TopAbs_COMPOUND) return 0;
 
   Standard_Integer mindeg = IF.GetMinDeg();