X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FDSC%2FDSC_Python%2Fcalcium.i;h=586cd8defdd6bc4a78a95135c6c8db65de76c9dd;hb=4b14a3f48efda72f90b88c78c6ae02153631dfd6;hp=424dd6a4a9dc0a1ab758f291456645fbeb0c23b4;hpb=05821b15e6b1f3c19896be929d1693666ad62b0d;p=modules%2Fkernel.git diff --git a/src/DSC/DSC_Python/calcium.i b/src/DSC/DSC_Python/calcium.i index 424dd6a4a..586cd8def 100644 --- a/src/DSC/DSC_Python/calcium.i +++ b/src/DSC/DSC_Python/calcium.i @@ -66,8 +66,8 @@ struct omniORBpyAPI { %init %{ +#include // init section - #ifdef WITH_NUMPY import_array() #endif @@ -77,10 +77,10 @@ struct omniORBpyAPI { { PyErr_SetString(PyExc_ImportError, (char*)"Cannot import _omnipy"); - return; + return NULL; } PyObject* pyapi = PyObject_GetAttrString(omnipy, (char*)"API"); - api = (omniORBpyAPI*)PyCObject_AsVoidPtr(pyapi); + api = (omniORBpyAPI*)PyCapsule_New(pyapi,NULL,NULL); Py_DECREF(pyapi); PyObject* engines = PyImport_ImportModule("Engines"); @@ -142,9 +142,11 @@ const char* pytype_string(PyObject* py_obj) { if (PyDict_Check( py_obj)) return "dict" ; if (PyList_Check( py_obj)) return "list" ; if (PyTuple_Check( py_obj)) return "tuple" ; - if (PyFile_Check( py_obj)) return "file" ; if (PyModule_Check( py_obj)) return "module" ; +#if PY_MAJOR_VERSION < 3 + if (PyFile_Check( py_obj)) return "file" ; if (PyInstance_Check(py_obj)) return "instance" ; +#endif return "unknown type"; }