summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKlaus Schmidinger <vdr@tvdr.de>2009-01-18 11:45:28 +0100
committerKlaus Schmidinger <vdr@tvdr.de>2009-01-18 11:45:28 +0100
commit1789a813f77dcfbb92284667ee37d4d0dec39b5a (patch)
treeebf273eefe878803748c266f5096a64c62f8c209
parent3434f061b38c5d809a2fc6630e504cec2f0f093a (diff)
downloadvdr-1789a813f77dcfbb92284667ee37d4d0dec39b5a.tar.gz
vdr-1789a813f77dcfbb92284667ee37d4d0dec39b5a.tar.bz2
Added checking mutexCurrentAudioTrack to cDevice::PlayTs()
-rw-r--r--CONTRIBUTORS2
-rw-r--r--HISTORY2
-rw-r--r--device.c3
3 files changed, 6 insertions, 1 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 03d7cd99..4fd72978 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -1193,6 +1193,8 @@ Reinhard Nissl <rnissl@gmx.de>
a video to an audio channel
for fixing returning complete PES packets in cTsToPes::GetPes()
for reporting a possible problem with removing deleted recordings
+ for pointing out that a check of mutexCurrentAudioTrack needs to be done in
+ to cDevice::PlayTs()
Richard Robson <richard_robson@beeb.net>
for reporting freezing replay if a timer starts while in Transfer Mode from the
diff --git a/HISTORY b/HISTORY
index 4bdad344..3c2e45a0 100644
--- a/HISTORY
+++ b/HISTORY
@@ -5943,3 +5943,5 @@ Video Disk Recorder Revision History
be used to distinguish recordings of the same broadcast made by different instances
of VDR (suggested by Frank Schmirler). This replaces the use of the "resume id"
that was introduced in version 1.7.3.
+- Added checking mutexCurrentAudioTrack to cDevice::PlayTs() (thanks to Reinhard
+ Nissl for pointing this out).
diff --git a/device.c b/device.c
index 23db6160..d4576b03 100644
--- a/device.c
+++ b/device.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: device.c 2.6 2009/01/16 15:20:21 kls Exp $
+ * $Id: device.c 2.7 2009/01/18 11:42:22 kls Exp $
*/
#include "device.h"
@@ -1322,6 +1322,7 @@ int cDevice::PlayTs(const uchar *Data, int Length, bool VideoOnly)
return Length; // silently ignore TS packets w/o payload
int PayloadOffset = TsPayloadOffset(Data);
if (PayloadOffset < Length) {
+ cMutexLock MutexLock(&mutexCurrentAudioTrack);
int Pid = TsPid(Data);
if (Pid == 0)
patPmtParser.ParsePat(Data + PayloadOffset, Length - PayloadOffset);