X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/d63d2c3c6cbbd574dda4f8b00ebe6c661735edd5..3af66122574386a2856e83ba9c5d73d27a6f3710:/lib/dvb/dvb.cpp diff --git a/lib/dvb/dvb.cpp b/lib/dvb/dvb.cpp index 176b07c5..8acd0c5d 100644 --- a/lib/dvb/dvb.cpp +++ b/lib/dvb/dvb.cpp @@ -8,7 +8,7 @@ DEFINE_REF(eDVBResourceManager); eDVBResourceManager *eDVBResourceManager::instance; -eDVBResourceManager::eDVBResourceManager(): ref(0) +eDVBResourceManager::eDVBResourceManager() { avail = 1; busy = 0; @@ -90,6 +90,8 @@ RESULT eDVBResourceManager::removeChannel(const eDVBChannelID &chid, eDVBChannel return -ENOENT; } +DEFINE_REF(eDVBChannel); + eDVBChannel::eDVBChannel(eDVBResourceManager *mgr, int adapter, int frontend, int demux): eDVBDemux(adapter, demux), m_state(state_idle), m_mgr(mgr) { if (frontend >= 0) @@ -180,7 +182,7 @@ RESULT eDVBChannel::setChannel(const eDVBChannelID &channelid) RESULT eDVBChannel::connectStateChange(const Slot1 &stateChange, ePtr &connection) { - connection = new eConnection( m_stateChanged.connect(stateChange) ); + connection = new eConnection((iDVBChannel*)this, m_stateChanged.connect(stateChange)); return 0; }