From eb5d63c8e4aefde2d89e74efb6edcd858f5e0e59 Mon Sep 17 00:00:00 2001 From: nox Date: Mon, 19 Dec 2011 19:27:52 +0000 Subject: - Merge author's version of my zapping fix from git head. - Bump PORTREVISION. --- multimedia/vdr-plugin-xvdr/Makefile | 1 + .../patch-81bde12cd5d36a5bb0f1bc5791977b58cc34f91e | 75 ++++++++++++++++++++++ 2 files changed, 76 insertions(+) create mode 100644 multimedia/vdr-plugin-xvdr/files/patch-81bde12cd5d36a5bb0f1bc5791977b58cc34f91e (limited to 'multimedia') diff --git a/multimedia/vdr-plugin-xvdr/Makefile b/multimedia/vdr-plugin-xvdr/Makefile index df8f06867da..9bbe0bce776 100644 --- a/multimedia/vdr-plugin-xvdr/Makefile +++ b/multimedia/vdr-plugin-xvdr/Makefile @@ -7,6 +7,7 @@ PORTNAME= vdr-plugin-xvdr PORTVERSION= 0.9.5 +PORTREVISION= 1 CATEGORIES= multimedia MASTER_SITES= LOCAL/nox/ DISTNAME= pipelka-${PORTNAME}-xvdr-${PORTVERSION}-0-g${GITHASH} diff --git a/multimedia/vdr-plugin-xvdr/files/patch-81bde12cd5d36a5bb0f1bc5791977b58cc34f91e b/multimedia/vdr-plugin-xvdr/files/patch-81bde12cd5d36a5bb0f1bc5791977b58cc34f91e new file mode 100644 index 00000000000..1e1939e3b0e --- /dev/null +++ b/multimedia/vdr-plugin-xvdr/files/patch-81bde12cd5d36a5bb0f1bc5791977b58cc34f91e @@ -0,0 +1,75 @@ +commit 81bde12cd5d36a5bb0f1bc5791977b58cc34f91e +Author: Alexander Pipelka +Date: Mon Dec 19 10:30:16 2011 +0100 + + wait until streaming stopped before switching to a new channel, thanks Juergen Lock + +diff --git a/src/xvdr/xvdrclient.c b/src/xvdr/xvdrclient.c +index ced735e..8078454 100644 +--- a/src/xvdr/xvdrclient.c ++++ b/src/xvdr/xvdrclient.c +@@ -72,6 +72,7 @@ static uint32_t recid2uid(const char* recid) + } + + cMutex cXVDRClient::m_timerLock; ++cMutex cXVDRClient::m_switchLock; + + cXVDRClient::cXVDRClient(int fd, unsigned int id, const char *ClientAdr) + { +@@ -183,6 +184,7 @@ void cXVDRClient::Action(void) + + bool cXVDRClient::StartChannelStreaming(const cChannel *channel, uint32_t timeout) + { ++ cMutexLock lock(&m_switchLock); + m_Streamer = new cLiveStreamer(timeout); + m_Streamer->SetLanguage(m_LanguageIndex, m_LangStreamType); + +@@ -192,12 +194,10 @@ bool cXVDRClient::StartChannelStreaming(const cChannel *channel, uint32_t timeou + + void cXVDRClient::StopChannelStreaming() + { ++ cMutexLock lock(&m_switchLock); ++ delete m_Streamer; ++ m_Streamer = NULL; + m_isStreaming = false; +- if (m_Streamer) +- { +- delete m_Streamer; +- m_Streamer = NULL; +- } + } + + void cXVDRClient::TimerChange(const cTimer *Timer, eTimerChange Change) +@@ -640,8 +640,7 @@ bool cXVDRClient::processChannelStream_Open() /* OPCODE 20 */ + if(timeout == 0) + timeout = XVDRServerConfig.stream_timeout; + +- if (m_isStreaming) +- StopChannelStreaming(); ++ StopChannelStreaming(); + + Channels.Lock(false); + const cChannel *channel = NULL; +@@ -679,9 +678,7 @@ bool cXVDRClient::processChannelStream_Open() /* OPCODE 20 */ + + bool cXVDRClient::processChannelStream_Close() /* OPCODE 21 */ + { +- if (m_isStreaming) +- StopChannelStreaming(); +- ++ StopChannelStreaming(); + return true; + } + +diff --git a/src/xvdr/xvdrclient.h b/src/xvdr/xvdrclient.h +index e602c70..99bae64 100644 +--- a/src/xvdr/xvdrclient.h ++++ b/src/xvdr/xvdrclient.h +@@ -64,6 +64,7 @@ private: + uint32_t m_protocolVersion; + cMutex m_msgLock; + static cMutex m_timerLock; ++ static cMutex m_switchLock; + int m_compressionLevel; + int m_LanguageIndex; + eStreamType m_LangStreamType; -- cgit 9d066028058e99cbc4bdc0e30dc58493cf92951'>root/converters/p5-Unicode-Stringprep
/table>
Commit message (Expand)AuthorAgeFilesLines
* - Update to 1.104sunpoet2011-12-102-8/+13
* - Use := in setting RUN_DEPENDS to quiet portlintswills2011-09-251-1/+3
aboutsummaryrefslogtreecommitdiffstats
Commit message (Expand)AuthorAgeFilesLines
* Bring unmaintained Quake ports under my wing.danfe2011-03-151-1/+1
* - Reassign ports to heaptabthorpe2011-02-27