mpegts table dispatch: added back the assert to see the bug
This commit is contained in:
parent
dcbf2cf512
commit
8b22c3fc0d
1 changed files with 6 additions and 1 deletions
|
@ -542,7 +542,7 @@ mpegts_input_recv_packets
|
|||
static void
|
||||
mpegts_input_table_dispatch ( mpegts_mux_t *mm, const uint8_t *tsb )
|
||||
{
|
||||
int i, len = 0;
|
||||
int i, len = 0, c = 0;
|
||||
uint16_t pid = ((tsb[1] & 0x1f) << 8) | tsb[2];
|
||||
uint8_t cc = (tsb[3] & 0x0f);
|
||||
mpegts_table_t *mt, **vec;
|
||||
|
@ -552,6 +552,7 @@ mpegts_input_table_dispatch ( mpegts_mux_t *mm, const uint8_t *tsb )
|
|||
i = mm->mm_num_tables;
|
||||
vec = alloca(i * sizeof(mpegts_table_t *));
|
||||
LIST_FOREACH(mt, &mm->mm_tables, mt_link) {
|
||||
c++;
|
||||
if (mt->mt_destroyed || !mt->mt_subscribed)
|
||||
continue;
|
||||
mpegts_table_grab(mt);
|
||||
|
@ -559,6 +560,10 @@ mpegts_input_table_dispatch ( mpegts_mux_t *mm, const uint8_t *tsb )
|
|||
vec[len++] = mt;
|
||||
}
|
||||
pthread_mutex_unlock(&mm->mm_tables_lock);
|
||||
if (i != c) {
|
||||
tvherror("psi", "tables count inconsistency (num %d, list %d)", i, c);
|
||||
assert(0);
|
||||
}
|
||||
|
||||
/* Process */
|
||||
for (i = 0; i < len; i++) {
|
||||
|
|
Loading…
Add table
Reference in a new issue