From ea02c4368a78b935a3595ca640cf50a20e1a23e0 Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela Date: Sun, 27 Jul 2014 16:05:20 +0200 Subject: [PATCH] mpegts tables: fix another table list inconsistency --- src/input/mpegts/mpegts_mux.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/input/mpegts/mpegts_mux.c b/src/input/mpegts/mpegts_mux.c index 01a92b3a..474ff78b 100644 --- a/src/input/mpegts/mpegts_mux.c +++ b/src/input/mpegts/mpegts_mux.c @@ -768,6 +768,8 @@ mpegts_mux_close_table ( mpegts_mux_t *mm, mpegts_table_t *mt ) pthread_mutex_unlock(&mm->mm_tables_lock); return; } + LIST_REMOVE(mt, mt_link); + mm->mm_num_tables--; if (mt->mt_defer_cmd == MT_DEFER_OPEN_PID) { LIST_REMOVE(mt, mt_defer_link); mt->mt_defer_cmd = 0; @@ -776,8 +778,6 @@ mpegts_mux_close_table ( mpegts_mux_t *mm, mpegts_table_t *mt ) return; } mpegts_table_grab(mt); /* thread will free the table */ - LIST_REMOVE(mt, mt_link); - mm->mm_num_tables--; mt->mt_defer_cmd = MT_DEFER_CLOSE_PID; LIST_INSERT_HEAD(&mm->mm_defer_tables, mt, mt_defer_link); pthread_mutex_unlock(&mm->mm_tables_lock);