diff options
| author | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2006-03-31 14:47:40 +0000 |
|---|---|---|
| committer | Andreas Monzner <andreas.monzner@multimedia-labs.de> | 2006-03-31 14:47:40 +0000 |
| commit | ca0ef0330257a8c91ca7778b376f2d74dd80c527 (patch) | |
| tree | 9c1a6fb1cd4908c693f9cd5d32979a96ac11b1ff /lib/dvb/dvb.cpp | |
| parent | a7c89c1f5d2b670f51552bee927b11116ab7eecb (diff) | |
| download | enigma2-ca0ef0330257a8c91ca7778b376f2d74dd80c527.tar.gz enigma2-ca0ef0330257a8c91ca7778b376f2d74dd80c527.zip | |
release cached channel when its no more used and a pvr channel request is pending
Diffstat (limited to 'lib/dvb/dvb.cpp')
| -rw-r--r-- | lib/dvb/dvb.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/dvb/dvb.cpp b/lib/dvb/dvb.cpp index ba76a40d..55aa6ea9 100644 --- a/lib/dvb/dvb.cpp +++ b/lib/dvb/dvb.cpp @@ -432,9 +432,16 @@ RESULT eDVBResourceManager::allocatePVRChannel(eUsePtr<iDVBPVRChannel> &channel) { ePtr<eDVBAllocatedDemux> demux; + if (m_cached_channel && m_releaseCachedChannelTimer.isActive()) + { + m_cached_channel_state_changed_conn.disconnect(); + m_cached_channel=0; + m_releaseCachedChannelTimer.stop(); + } + eDVBChannel *ch; ch = new eDVBChannel(this, 0); - + channel = ch; return 0; } |
