Sisyphus repository
Last update: 1 october 2023 | SRPMs: 18631 | Visits: 37755878
en ru br
ALT Linux repos
S:2.2.0-alt12
D:1.6.0-alt1
3.0: 1.3.15-alt1

Group :: Video
RPM: vdr

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs and FR  Repocop 

Patch: vdr-1.3.10-epgfix.diff
Download


--- eitscan.c	2004-04-16 15:33:34.000000000 +0200
+++ eitscan.c	2004-06-10 15:36:26.000000000 +0200
@@ -121,6 +121,21 @@
   lastActivity = time(NULL);
 }
 
+#include "plugin.h"
+#define SC_NAME "sc"
+#define SC_MAGIC { 0,'S','C',0xc4,0x5e,0xa1 }
+#define OP_PROVIDES 0
+#define OP_IGNORE   1
+
+struct ScLink {
+  char magic[6];
+  short op;
+  const cDevice *dev;
+  unsigned short *caids;
+  const cChannel *channel;
+  int num;
+  };
+
 void cEITScanner::Process(void)
 {
   if (Setup.EPGScanTimeout && Channels.MaxNumber() > 1) {
@@ -152,6 +167,16 @@
                                         Skins.Message(mtInfo, "Starting EPG scan");
                                         }
                                      currentDevice = Device;//XXX see also dvbdevice.c!!!
+
+                                     if(Channel->Ca()>=0x100) {
+                                       cPlugin *p = cPluginManager::GetPlugin(SC_NAME);
+                                       if(p) { // ignore this channel in SC (ugly hack!)
+                                         struct ScLink link = { SC_MAGIC,0,Device,0,Channel,0 };
+                                         link.op=OP_IGNORE;
+                                         p->SetupParse((const char *)&link,"");
+                                         }
+                                       }
+
                                      Device->SwitchChannel(Channel, false);
                                      currentDevice = NULL;
                                      scanList->Del(ScanData);
 
design & coding: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
current maintainer: Michael Shigorin