summaryrefslogtreecommitdiffstats
path: root/libmpdemux/demuxer.c
diff options
context:
space:
mode:
authorreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2005-08-23 08:03:26 +0000
committerreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2005-08-23 08:03:26 +0000
commitdead4d1193fe79f64138e92fbc776dd31e7a9d0e (patch)
treee40ba09d705c07b1c400e95f80b0be32a119b292 /libmpdemux/demuxer.c
parent33cb7846646cafba62d1b30b3c686f2cbb2bb53c (diff)
downloadmpv-dead4d1193fe79f64138e92fbc776dd31e7a9d0e.tar.bz2
mpv-dead4d1193fe79f64138e92fbc776dd31e7a9d0e.tar.xz
Do not free demuxer before using demuxer->desc->type (happened when using -audiofile).
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@16292 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpdemux/demuxer.c')
-rw-r--r--libmpdemux/demuxer.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libmpdemux/demuxer.c b/libmpdemux/demuxer.c
index d43735c186..22620b38ef 100644
--- a/libmpdemux/demuxer.c
+++ b/libmpdemux/demuxer.c
@@ -260,7 +260,7 @@ void free_demuxer(demuxer_t *demuxer){
demuxer->desc->close(demuxer);
// Very ugly hack to make it behave like old implementation
if (demuxer->desc->type == DEMUXER_TYPE_DEMUXERS)
- return;
+ goto skip_streamfree;
// free streams:
for(i = 0; i < MAX_A_STREAMS; i++)
if(demuxer->a_streams[i]) free_sh_audio(demuxer->a_streams[i]);
@@ -272,6 +272,7 @@ void free_demuxer(demuxer_t *demuxer){
free_demuxer_stream(demuxer->audio);
free_demuxer_stream(demuxer->video);
free_demuxer_stream(demuxer->sub);
+skip_streamfree:
if(demuxer->info) {
for(i=0;demuxer->info[i] != NULL; i++)
free(demuxer->info[i]);