diff options
author | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2007-01-05 18:02:18 +0000 |
---|---|---|
committer | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2007-01-05 18:02:18 +0000 |
commit | 50dc3ce2c76be94a41767769c2bd1c381ef7cf76 (patch) | |
tree | 8f03d0b03368146f71bd271174c3cad239a9fb23 | |
parent | e3fe6113a6c66a82e707ac0e5731e22bcf63acd0 (diff) | |
download | mpv-50dc3ce2c76be94a41767769c2bd1c381ef7cf76.tar.bz2 mpv-50dc3ce2c76be94a41767769c2bd1c381ef7cf76.tar.xz |
Do not access ogg_d->subs after freeing it.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21829 b3059339-0415-0410-9bf9-f77b7e298cf2
-rw-r--r-- | libmpdemux/demux_ogg.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/libmpdemux/demux_ogg.c b/libmpdemux/demux_ogg.c index 14703f3b94..04d3a7b7d3 100644 --- a/libmpdemux/demux_ogg.c +++ b/libmpdemux/demux_ogg.c @@ -1600,7 +1600,12 @@ static void demux_close_ogg(demuxer_t* demuxer) { if(ogg_d->subs) { for (i = 0; i < ogg_d->num_sub; i++) + { + os = &ogg_d->subs[i]; ogg_stream_clear(&ogg_d->subs[i].stream); + if(os->vi_inited) + vorbis_info_clear(&os->vi); + } free(ogg_d->subs); } if(ogg_d->syncpoints) @@ -1612,11 +1617,6 @@ static void demux_close_ogg(demuxer_t* demuxer) { if (ogg_d->text_langs[i]) free(ogg_d->text_langs[i]); free(ogg_d->text_langs); } - if(demuxer->audio->id > -1 && demuxer->audio->id < ogg_d->num_sub) { - os = &ogg_d->subs[demuxer->audio->id]; - if(os->vi_inited) - vorbis_info_clear(&os->vi); - } free(ogg_d); } |