Merge branch 'bug_617_default_favlist_handling_fix' into experimental
[enigma2.git] / lib / python / connections.cpp
index b54c07b16620287b40684b98592a936b6b5c7e50..c0d38f8931a38c8a3fc1786ec9a60f6087f2d3ef 100644 (file)
@@ -1,14 +1,11 @@
 #include <lib/python/connections.h>
 
 PSignal::PSignal()
-       :m_destroyed(0)
 {
 }
 
 PSignal::~PSignal()
 {
-       if (m_destroyed)
-               *m_destroyed = true;
        Py_XDECREF(m_list);
 }
 
@@ -23,12 +20,21 @@ void PSignal::callPython(ePyObject tuple)
        }
 }
 
-PyObject *PSignal::get(bool steal)
+PyObject *PSignal::get()
 {
-       if (!steal) {
-               if (!m_list)
-                       m_list = PyList_New(0);
-               Py_INCREF(m_list);
+       if (!m_list)
+               m_list = PyList_New(0);
+       Py_INCREF(m_list);
+       return m_list;
+}
+
+PyObject *PSignal::getSteal(bool clear)
+{
+       if (clear)
+       {
+               ePyObject ret = m_list;
+               m_list = (PyObject*)0;
+               return ret;
        }
        return m_list;
 }