mpegts: ensure init scan completes properly

I was not properly checking completion on table completion and CAT processing
was not marking that table as complete (ever).
This commit is contained in:
Adam Sutton 2013-12-29 23:38:31 +00:00
parent 403f2af9b9
commit aea03049a0
3 changed files with 6 additions and 2 deletions

View file

@ -698,7 +698,9 @@ dvb_cat_callback
ptr += dlen;
len -= dlen;
}
return 0;
/* Finish */
return dvb_table_end(mt, st, sect);
}
/*

View file

@ -658,6 +658,7 @@ mpegts_mux_initial_scan_timeout ( void *aux )
/* Pending tables (another 20s - bit arbitrary) */
} else if (q) {
tvhinfo("mepgts", "%s - initial scan needs more time", buf);
gtimer_arm(&mm->mm_initial_scan_timeout,
mpegts_mux_initial_scan_timeout, mm, 20);
return;

View file

@ -30,7 +30,8 @@ mpegts_table_fastswitch ( mpegts_mux_t *mm )
return;
LIST_FOREACH(mt, &mm->mm_tables, mt_link) {
if((mt->mt_flags & MT_QUICKREQ) && mt->mt_count == 0)
if (!(mt->mt_flags & MT_QUICKREQ)) continue;
if(!mt->mt_complete)
return;
}