X-Git-Url: http://code.vuplus.com/gitweb/?p=vuplus_dvbapp;a=blobdiff_plain;f=lib%2Fnav%2Fcore.cpp;h=0b690b812b742d40dd31c5ec58eebd0f1c7df994;hp=0b4270d9c15f8fae44ef06a0ed857581cc5f0e25;hb=8a951b87cc4f6d4db0f1c3c9113a4c0943971ef2;hpb=7d7ca8ee2eaae704989a1552ad429794d402f550 diff --git a/lib/nav/core.cpp b/lib/nav/core.cpp index 0b4270d..0b690b8 100644 --- a/lib/nav/core.cpp +++ b/lib/nav/core.cpp @@ -59,12 +59,15 @@ RESULT eNavigation::stopService(void) /* check if there is a running service... */ if (!m_runningService) return 1; - /* send stop event */ + + ePtr tmp = m_runningService; + m_runningService=0; + tmp->stop(); + + /* send stop event */ m_event(iPlayableService::evEnd); - m_runningService->stop(); /* kill service. */ - m_runningService = 0; m_service_event_conn = 0; return 0; } @@ -99,14 +102,12 @@ RESULT eNavigation::stopRecordService(ePtr &service) return -1; } -extern PyObject *New_iRecordableServicePtr(const ePtr &ref); // defined in enigma_python.i - PyObject *eNavigation::getRecordings(void) { - PyObject *result = PyList_New(m_recordings.size()); + ePyObject result = PyList_New(m_recordings.size()); int pos=0; for (std::map, ePtr >::iterator it(m_recordings.begin()); it != m_recordings.end(); ++it) - PyList_SET_ITEM(result, pos++, New_iRecordableServicePtr(it->first)); + PyList_SET_ITEM(result, pos++, NEW_iRecordableServicePtr(it->first)); return result; }