git.cweiske.de
/
enigma2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
move volumeslider to the same position as in e1
[enigma2.git]
/
lib
/
python
/
python.cpp
diff --git
a/lib/python/python.cpp
b/lib/python/python.cpp
index 14e32af6a743f8e76d571ca27e754c16622a1b6a..642d70ba9f3072f26e4773dbc8151453abb7b7f0 100644
(file)
--- a/
lib/python/python.cpp
+++ b/
lib/python/python.cpp
@@
-95,21
+95,26
@@
int ePython::execute(const std::string &pythonfile, const std::string &funcname)
return 0;
}
return 0;
}
-
void
ePython::call(PyObject *pFunc, PyObject *pArgs)
+
int
ePython::call(PyObject *pFunc, PyObject *pArgs)
{
{
+ int res = -1;
PyObject *pValue;
if (pFunc && PyCallable_Check(pFunc))
{
pValue = PyObject_CallObject(pFunc, pArgs);
if (pValue != NULL)
{
PyObject *pValue;
if (pFunc && PyCallable_Check(pFunc))
{
pValue = PyObject_CallObject(pFunc, pArgs);
if (pValue != NULL)
{
-// printf("Result of call: %ld\n", PyInt_AsLong(pValue));
+ if (PyInt_Check(pValue))
+ res = PyInt_AsLong(pValue);
+ else
+ res = 0;
Py_DECREF(pValue);
} else
{
PyErr_Print();
}
}
Py_DECREF(pValue);
} else
{
PyErr_Print();
}
}
+ return res;
}
PyObject *ePython::resolve(const std::string &pythonfile, const std::string &funcname)
}
PyObject *ePython::resolve(const std::string &pythonfile, const std::string &funcname)
@@
-127,7
+132,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
{