X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/eb075d3df639057b1f99d65563781401386fb3d4..d3df119df8520deac7a05ce9e7be2e4a68a2127c:/lib/dvb/epgcache.cpp diff --git a/lib/dvb/epgcache.cpp b/lib/dvb/epgcache.cpp index 88fd677a..e3a45856 100644 --- a/lib/dvb/epgcache.cpp +++ b/lib/dvb/epgcache.cpp @@ -1267,18 +1267,23 @@ PyObject *handleEvent(ePtr &ptr, PyObject *dest_list, char* argst PyObject *result = PyEval_CallObject(convertFunc, convertFuncArgs); if (result == NULL) { + if (service_name) + Py_DECREF(service_name); if (nowTime) Py_DECREF(nowTime); Py_DECREF(convertFuncArgs); + Py_DECREF(dest_list); return result; } PyList_Append(dest_list, result); + Py_DECREF(result); } else { PyObject *tuple = PyTuple_New(argcount); fillTuple(tuple, argstring, argcount, service, ptr, nowTime, service_name); PyList_Append(dest_list, tuple); + Py_DECREF(tuple); } return 0; }