rendered paste bodydiff -urNp mythtv/libs/libmythtv/siscan.cpp mythtv-12206-trunk.opacus2/libs/libmythtv/siscan.cpp
--- mythtv/libs/libmythtv/siscan.cpp 2006-12-05 19:35:07.000000000 -0800
+++ mythtv-12206-trunk.opacus2/libs/libmythtv/siscan.cpp 2006-12-07 01:14:13.000000000 -0800
@@ -101,6 +101,7 @@ SIScan::SIScan(const QString &_cardtype,
forceUpdate(false),
renameChannels(false),
channelFormat("%1_%2"),
+ dishNetSDT(true),
// State
threadExit(false),
waitingForTables(false),
@@ -122,7 +123,9 @@ SIScan::SIScan(const QString &_cardtype,
dtvSigMon->SetStreamData(data);
dtvSigMon->AddFlags(kDTVSigMon_WaitForMGT | kDTVSigMon_WaitForVCT |
- kDTVSigMon_WaitForNIT | kDTVSigMon_WaitForSDT);
+ kDTVSigMon_WaitForNIT);
+ if(!dishNetSDT)
+ dtvSigMon->AddFlags(kDTVSigMon_WaitForSDT);
data->AddMPEGListener(this);
data->AddATSCMainListener(this);
@@ -285,6 +288,17 @@ void SIScan::HandlePAT(const ProgramAsso
if (pat->ProgramPID(i)) // don't add NIT "program", MPEG/ATSC safe.
sd->AddListeningPID(pat->ProgramPID(i));
}
+
+ // Force TSID for Dish Network
+ if(dishNetSDT)
+ {
+ DVBStreamData *sd = GetDVBSignalMonitor()->GetDVBStreamData();
+ if (sd)
+ {
+ sd->SetDishNetTSID(pat->TransportStreamID());
+ sd->AddListeningPID(DVB_SDT_PID);
+ }
+ }
}
void SIScan::HandleVCT(uint, const VirtualChannelTable*)
diff -urNp mythtv/libs/libmythtv/siscan.h mythtv-12206-trunk.opacus2/libs/libmythtv/siscan.h
--- mythtv/libs/libmythtv/siscan.h 2006-12-05 19:35:07.000000000 -0800
+++ mythtv-12206-trunk.opacus2/libs/libmythtv/siscan.h 2006-12-07 01:14:13.000000000 -0800
@@ -190,6 +190,7 @@ class SIScan : public QObject,
bool forceUpdate;
bool renameChannels;
QString channelFormat;
+ bool dishNetSDT;
// State
bool threadExit;