mi->mi_linked = NULL;
tvhtrace("mpegts", "subscribe keep for '%s' (%p)", mi->mi_name, mm);
r = mpegts_mux_subscribe(mm, mi, "keep", SUBSCRIPTION_PRIO_KEEP,
- SUBSCRIPTION_RESTART | SUBSCRIPTION_MINIMAL);
+ SUBSCRIPTION_ONESHOT | SUBSCRIPTION_MINIMAL);
mi->mi_linked = s;
return r;
}
/* Process Q */
for (mm = TAILQ_FIRST(&mn->mn_scan_pend); mm != NULL; mm = nxt) {
nxt = TAILQ_NEXT(mm, mm_scan_link);
- assert(mm->mm_scan_state == MM_SCAN_STATE_PEND);
+ assert(mm->mm_scan_state == MM_SCAN_STATE_PEND || mm->mm_scan_state == MM_SCAN_STATE_ACTIVE);
/* Don't try to subscribe already tuned muxes */
if (mm->mm_active) continue;