X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/9289748ceda0195c346437632be8558587441287..d85c75fc186d91f497d5997982db94259b041280:/lib/python/python.cpp diff --git a/lib/python/python.cpp b/lib/python/python.cpp index f467bc86..119bff1c 100644 --- a/lib/python/python.cpp +++ b/lib/python/python.cpp @@ -1,8 +1,12 @@ #include #include + /* avoid warnigs :) */ +#undef _POSIX_C_SOURCE +#define _POSIX_C_SOURCE 200112L #include extern "C" void init_enigma(); +extern void bsodFatal(); DEFINE_REF(TestObj); @@ -56,6 +60,10 @@ ePyObject &ePyObject::operator=(void *object) ePython::ePython() { +// Py_VerboseFlag = 1; + +// Py_OptimizeFlag = 1; + Py_Initialize(); init_enigma(); @@ -69,9 +77,8 @@ ePython::~ePython() int ePython::execute(const std::string &pythonfile, const std::string &funcname) { PyObject *pName, *pModule, *pDict, *pFunc, *pArgs, *pValue; - pName = PyString_FromString(pythonfile.c_str()); - + pModule = PyImport_Import(pName); Py_DECREF(pName); @@ -124,6 +131,7 @@ int ePython::call(PyObject *pFunc, PyObject *pArgs) } else { PyErr_Print(); + bsodFatal(); } } return res;