From: Michael Niedermayer Date: Mon, 3 Nov 2014 21:23:54 +0000 (+0100) Subject: avformat/mpegts: Do not add pid if its already there with add_pid_to_pmt() X-Git-Tag: n2.6-dev~646 X-Git-Url: http://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff_plain/a6593f7cc6e4aeebcae4a0f74ca105940379419e avformat/mpegts: Do not add pid if its already there with add_pid_to_pmt() Signed-off-by: Michael Niedermayer --- diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c index c01f954..8e639e0 100644 --- a/libavformat/mpegts.c +++ b/libavformat/mpegts.c @@ -299,11 +299,17 @@ static void add_pid_to_pmt(MpegTSContext *ts, unsigned int programid, unsigned int pid) { struct Program *p = get_program(ts, programid); + int i; if (!p) return; if (p->nb_pids >= MAX_PIDS_PER_PROGRAM) return; + + for (i = 0; i < MAX_PIDS_PER_PROGRAM; i++) + if (p->pids[i] == pid) + return; + p->pids[p->nb_pids++] = pid; }