diff options
Diffstat (limited to 'media-gfx/freecad/files/freecad-0.13.1830-occ-6.7.patch')
-rw-r--r-- | media-gfx/freecad/files/freecad-0.13.1830-occ-6.7.patch | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/media-gfx/freecad/files/freecad-0.13.1830-occ-6.7.patch b/media-gfx/freecad/files/freecad-0.13.1830-occ-6.7.patch new file mode 100644 index 000000000000..410929bec851 --- /dev/null +++ b/media-gfx/freecad/files/freecad-0.13.1830-occ-6.7.patch @@ -0,0 +1,63 @@ +commit c1d14eab3c3f9f1141dc0b7fca7cc4441431b50b +Author: wmayer <wmayer@users.sourceforge.net> +Date: Sat Dec 28 12:22:31 2013 +0100 + + + Fix OCC 6.7 build failure + +diff --git a/src/Mod/Part/App/BRepOffsetAPI_MakePipeShellPyImp.cpp b/src/Mod/Part/App/BRepOffsetAPI_MakePipeShellPyImp.cpp +index 578f5be..bdc91c3 100644 +--- a/src/Mod/Part/App/BRepOffsetAPI_MakePipeShellPyImp.cpp ++++ b/src/Mod/Part/App/BRepOffsetAPI_MakePipeShellPyImp.cpp +@@ -29,6 +29,7 @@ + # include <TopoDS.hxx> + # include <TopoDS_Wire.hxx> + # include <BRepOffsetAPI_MakePipeShell.hxx> ++# include <Standard_Version.hxx> + # include <TopTools_ListIteratorOfListOfShape.hxx> + #endif + +@@ -111,6 +112,36 @@ PyObject* BRepOffsetAPI_MakePipeShellPy::setSpineSupport(PyObject *args) + + PyObject* BRepOffsetAPI_MakePipeShellPy::setAuxiliarySpine(PyObject *args) + { ++#if OCC_VERSION_HEX >= 0x060700 ++ PyObject *spine, *curv, *keep; ++ if (!PyArg_ParseTuple(args, "O!O!O!",&Part::TopoShapePy::Type,&spine ++ ,&PyBool_Type,&curv ++ ,&PyInt_Type,&keep)) ++ return 0; ++ const TopoDS_Shape& s = static_cast<Part::TopoShapePy*>(spine)->getTopoShapePtr()->_Shape; ++ if (s.IsNull() || s.ShapeType() != TopAbs_WIRE) { ++ PyErr_SetString(PyExc_TypeError, "spine is not a wire"); ++ return 0; ++ } ++ ++ BRepFill_TypeOfContact typeOfCantact; ++ switch (PyLong_AsLong(keep)) { ++ case 1: ++ typeOfCantact = BRepFill_Contact; ++ break; ++ case 2: ++ typeOfCantact = BRepFill_ContactOnBorder; ++ break; ++ default: ++ typeOfCantact = BRepFill_NoContact; ++ break; ++ } ++ this->getBRepOffsetAPI_MakePipeShellPtr()->SetMode( ++ TopoDS::Wire(s), ++ PyObject_IsTrue(curv) ? Standard_True : Standard_False, ++ typeOfCantact); ++ Py_Return; ++#else + PyObject *spine, *curv, *keep; + if (!PyArg_ParseTuple(args, "O!O!O!",&Part::TopoShapePy::Type,&spine + ,&PyBool_Type,&curv +@@ -127,6 +158,7 @@ PyObject* BRepOffsetAPI_MakePipeShellPy::setAuxiliarySpine(PyObject *args) + PyObject_IsTrue(curv) ? Standard_True : Standard_False, + PyObject_IsTrue(keep) ? Standard_True : Standard_False); + Py_Return; ++#endif + } + + PyObject* BRepOffsetAPI_MakePipeShellPy::add(PyObject *args) |