- improved parser
[enigma2.git] / lib / dvb / dvb.cpp
index 895ff0843ea35d82a0025421e573e7f1f5602029..8acd0c5dea22c853d19ad25339b54006759d2760 100644 (file)
@@ -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<void,iDVBChannel*> &stateChange, ePtr<eConnection> &connection)
 {
-       connection = new eConnection(m_stateChanged.connect(stateChange));
+       connection = new eConnection((iDVBChannel*)this, m_stateChanged.connect(stateChange));
        return 0;
 }