Fixed handling PATs that contain no PMTs

This commit is contained in:
Klaus Schmidinger 2019-03-11 13:21:17 +01:00
parent 084f51c7db
commit 61c00ccae5
2 changed files with 4 additions and 2 deletions

View File

@ -9375,3 +9375,4 @@ Video Disk Recorder Revision History
missing EPG data on channels from Canal Digital Norway (reported by Stian B. Barmen). missing EPG data on channels from Canal Digital Norway (reported by Stian B. Barmen).
- Fixed accessing the actual frontend on multi frontend devices (thanks to Helmut Binder). - Fixed accessing the actual frontend on multi frontend devices (thanks to Helmut Binder).
- Fixed opening the UDP port in peerdemo (thanks to Robert Hannebauer). - Fixed opening the UDP port in peerdemo (thanks to Robert Hannebauer).
- Fixed handling PATs that contain no PMTs.

5
pat.c
View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and * See the main source file 'vdr.c' for copyright information and
* how to reach the author. * how to reach the author.
* *
* $Id: pat.c 4.3 2016/12/23 14:02:07 kls Exp $ * $Id: pat.c 4.4 2019/03/11 13:20:27 kls Exp $
*/ */
#include "pat.h" #include "pat.h"
@ -372,7 +372,8 @@ void cPatFilter::Process(u_short Pid, u_char Tid, const u_char *Data, int Length
} }
if (numPmtEntries > 0 && pmtIndex < 0) if (numPmtEntries > 0 && pmtIndex < 0)
pmtIndex = 0; pmtIndex = 0;
Add(GetPmtPid(pmtIndex), SI::TableIdPMT); if (pmtIndex >= 0)
Add(GetPmtPid(pmtIndex), SI::TableIdPMT);
patVersion = pat.getVersionNumber(); patVersion = pat.getVersionNumber();
timer.Set(PMT_SCAN_TIMEOUT); timer.Set(PMT_SCAN_TIMEOUT);
} }