summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CONTRIBUTORS2
-rw-r--r--HISTORY4
-rw-r--r--cutter.c6
3 files changed, 9 insertions, 3 deletions
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 9e2317ff..027a99bf 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -2970,6 +2970,8 @@ Sören Moch <smoch@web.de>
for a patch that was used to move cleaning up the EPG data and writing the epg.data
file into a separate thread to avoid sluggish response to user input on slow systems
for fixing sorting folders before recordings in case of UTF-8
+ for reporting that cCuttingThread::GetPendingPackets() should get only non-video
+ packets
Peter Münster <pmlists@free.fr>
for fixing 'make install' to not overwrite existing configuration files
diff --git a/HISTORY b/HISTORY
index cee01aa2..64c1b664 100644
--- a/HISTORY
+++ b/HISTORY
@@ -7339,10 +7339,12 @@ Video Disk Recorder Revision History
- Modified editing marks are now written to disk whenever the replay progress display
gets hidden (thanks to Christoph Haubrich).
-2012-11-21: Version 1.7.33
+2012-11-25: Version 1.7.33
- In order to be able to play TS recordings from other sources, in which there is
more than one PMT PID in the PAT, 'int cPatPmtParser::PatPmt(void)' has been changed
to 'bool cPatPmtParser::IsPatPmt(int Pid)'.
- Fixed learning remote control keys with the LCARS skin.
- Updated the Macedonian OSD texts (thanks to Dimitar Petrovski).
+- Fixed getting only non-video packets in cCuttingThread::GetPendingPackets() (reported
+ by Sören Moch).
diff --git a/cutter.c b/cutter.c
index 42b966aa..e6de47ea 100644
--- a/cutter.c
+++ b/cutter.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: cutter.c 2.17 2012/11/19 10:21:44 kls Exp $
+ * $Id: cutter.c 2.18 2012/11/25 13:59:07 kls Exp $
*/
#include "cutter.h"
@@ -408,8 +408,10 @@ void cCuttingThread::GetPendingPackets(uchar *Data, int &Length, int Index, int6
int Pid = TsPid(p);
if (Pid == PATPID)
PatPmtParser.ParsePat(p, TS_SIZE);
- else if (PatPmtParser.IsPmtPid(Pid))
+ else if (PatPmtParser.IsPmtPid(Pid)) {
PatPmtParser.ParsePmt(p, TS_SIZE);
+ Processed[PatPmtParser.Vpid()] = true; // we only want non-video packets
+ }
else if (!Processed[Pid]) {
int64_t Pts = TsGetPts(p, TS_SIZE);
if (Pts >= 0) {