summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPetri Hintukainen <phintuka@users.sourceforge.net>2011-11-23 12:49:41 +0200
committerPetri Hintukainen <phintuka@users.sourceforge.net>2011-11-23 12:49:41 +0200
commitcd575a4f9c41006ee116f5538fca93fee3df43eb (patch)
treea9e27c881153bd58ab55f9edb69fbe30f7c0cfec
parentef30770635d89001917d7d04182c561ff392091d (diff)
downloadxine-lib-cd575a4f9c41006ee116f5538fca93fee3df43eb.tar.gz
xine-lib-cd575a4f9c41006ee116f5538fca93fee3df43eb.tar.bz2
demux_ts: fixed possible double free_buffer. Make sure unused media entries have no pid.
-rw-r--r--src/demuxers/demux_ts.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/demuxers/demux_ts.c b/src/demuxers/demux_ts.c
index cafa07e0b..c47fc7755 100644
--- a/src/demuxers/demux_ts.c
+++ b/src/demuxers/demux_ts.c
@@ -501,7 +501,11 @@ static void demux_ts_dynamic_pmt_clean (demux_ts_t *this) {
spus++;
}
}
- if (i > count) this->media[count] = *m;
+ if (i > count) {
+ this->media[count] = *m;
+ m->buf = NULL;
+ m->pid = INVALID_PID;
+ }
count++;
} else {
/* drop this no longer needed media descriptor */