]> git.ipfire.org Git - thirdparty/tvheadend.git/commitdiff
bouquets: BSkyB/Freesat - don't create services with duplicate chnums
authorJaroslav Kysela <perex@perex.cz>
Fri, 7 Nov 2014 16:30:17 +0000 (17:30 +0100)
committerJaroslav Kysela <perex@perex.cz>
Sat, 8 Nov 2014 20:05:39 +0000 (21:05 +0100)
src/input/mpegts/dvb_psi.c

index 028431ba06ea17d1e30cc4db2d9a41e045bc92f6..6a044f3234532be704a51eb9bcc4564e1df4f95e 100644 (file)
@@ -591,8 +591,14 @@ dvb_freesat_completed
     regions++;
     if (TAILQ_EMPTY(&fr->services)) continue;
     uregions++;
-    TAILQ_FOREACH(fs, &fr->services, region_link)
+    TAILQ_FOREACH(fs, &fr->services, region_link) {
       dvb_freesat_add_service(bi, fr, fs->svc, fs->lcn);
+      TAILQ_FOREACH(bs, &bi->services, link)
+        if (bs->fallback && fs->lcn == bs->fallback->lcn) {
+          bs->fallback = NULL;
+          break;
+        }
+    }
     TAILQ_FOREACH(bs, &bi->services, link) {
       TAILQ_FOREACH(fs, &fr->services, region_link)
         if (fs->svc == bs->svc)