git.cweiske.de
/
enigma2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
don't set title, because it doesn't work properly
[enigma2.git]
/
lib
/
python
/
python.cpp
diff --git
a/lib/python/python.cpp
b/lib/python/python.cpp
index a1ef1508a2005ac9dd5a3cb481feaf061a70e586..4ca77ab2f6bf88825d5f62a79b2e5463646bf885 100644
(file)
--- a/
lib/python/python.cpp
+++ b/
lib/python/python.cpp
@@
-1,9
+1,24
@@
#include <lib/python/python.h>
#include <lib/base/eerror.h>
#include <lib/python/python.h>
#include <lib/base/eerror.h>
+ /* avoid warnigs :) */
+#undef _POSIX_C_SOURCE
+#define _POSIX_C_SOURCE 200112L
#include <Python.h>
extern "C" void init_enigma();
#include <Python.h>
extern "C" void init_enigma();
+DEFINE_REF(TestObj);
+
+TestObj::TestObj()
+{
+ eDebug("create %p", this);
+}
+
+TestObj::~TestObj()
+{
+ eDebug("destroy %p", this);
+}
+
#if 0
ePyObject::ePyObject(void *ptr): m_object(ptr)
{
#if 0
ePyObject::ePyObject(void *ptr): m_object(ptr)
{
@@
-44,6
+59,8
@@
ePyObject &ePyObject::operator=(void *object)
ePython::ePython()
{
ePython::ePython()
{
+// Py_VerboseFlag = 1;
+
Py_Initialize();
init_enigma();
Py_Initialize();
init_enigma();
@@
-104,7
+121,10
@@
int ePython::call(PyObject *pFunc, PyObject *pArgs)
pValue = PyObject_CallObject(pFunc, pArgs);
if (pValue != NULL)
{
pValue = PyObject_CallObject(pFunc, pArgs);
if (pValue != NULL)
{
- res = PyInt_AsLong(pValue);
+ if (PyInt_Check(pValue))
+ res = PyInt_AsLong(pValue);
+ else
+ res = 0;
Py_DECREF(pValue);
} else
{
Py_DECREF(pValue);
} else
{
@@
-129,7
+149,6
@@
PyObject *ePython::resolve(const std::string &pythonfile, const std::string &fun
pFunc = PyDict_GetItemString(pDict, funcname.c_str());
Py_XINCREF(pFunc);
Py_DECREF(pModule);
pFunc = PyDict_GetItemString(pDict, funcname.c_str());
Py_XINCREF(pFunc);
Py_DECREF(pModule);
- eDebug("resolved to %p", pFunc);
return pFunc;
} else
{
return pFunc;
} else
{