From fe9a58b88cd232e1dffe078a6fa88ded2f62bb90 Mon Sep 17 00:00:00 2001 From: Frank Schmirler Date: Fri, 10 Dec 2010 16:38:10 +0100 Subject: [PATCH] fixed regression: no receiver created for ES/PS/PES (reported by Gavin Hamill) --- CONTRIBUTORS | 3 +++ HISTORY | 2 ++ server/livestreamer.c | 5 +++-- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/CONTRIBUTORS b/CONTRIBUTORS index 4261e63..0f75714 100644 --- a/CONTRIBUTORS +++ b/CONTRIBUTORS @@ -139,3 +139,6 @@ Matthias Prill Timothy D. Lenz for reporting missing support for invisible channel groups in HTTP menu + +Gavin Hamill + for reporting that ES/PS/PES no longer works diff --git a/HISTORY b/HISTORY index e0a4789..0f54598 100644 --- a/HISTORY +++ b/HISTORY @@ -1,6 +1,8 @@ VDR Plugin 'streamdev' Revision History --------------------------------------- +- fixed regression: no receiver created for ES/PS/PES (reported by Gavin + Hamill) - VTP no longer uses a static priority value for its server-side receivers. The server stores channel and priority requested with the PROV command and re-uses these values in a subsequent TUNE for the same channel. The new diff --git a/server/livestreamer.c b/server/livestreamer.c index 7ec7d9e..3d422dc 100644 --- a/server/livestreamer.c +++ b/server/livestreamer.c @@ -450,7 +450,7 @@ void cStreamdevLiveStreamer::SetPriority(int Priority) void cStreamdevLiveStreamer::StartReceiver(void) { - if (m_Device != NULL && m_NumPids > 0 && IsRunning()) { + if (m_NumPids > 0) { Dprintf("Creating Receiver to respect changed pids\n"); cReceiver *current = m_Receiver; #if VDRVERSNUM < 10500 @@ -459,7 +459,8 @@ void cStreamdevLiveStreamer::StartReceiver(void) m_Receiver = new cStreamdevLiveReceiver(this, m_Channel->GetChannelID(), m_Priority, m_Pids); #endif cThreadLock ThreadLock(m_Device); - Attach(); + if (IsRunning()) + Attach(); delete current; } else