From d74696079d2ee470660f2c1794481d3a4e50fb92 Mon Sep 17 00:00:00 2001 From: Laurent Aimar Date: Wed, 11 Aug 2010 22:17:35 +0200 Subject: [PATCH] Fixed invalid pointer usage after free (vout). It closes #3999. --- src/video_output/video_output.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/video_output/video_output.c b/src/video_output/video_output.c index 66080d20bb..04832b24c7 100644 --- a/src/video_output/video_output.c +++ b/src/video_output/video_output.c @@ -1048,9 +1048,6 @@ static int ThreadStart(vout_thread_t *vout, const vout_display_state_t *state) static void ThreadStop(vout_thread_t *vout, vout_display_state_t *state) { - /* Destroy the video filters2 */ - filter_chain_Delete(vout->p->filter.chain); - /* Destroy translation tables */ if (vout->p->display.vd) { if (vout->p->decoder_pool) { @@ -1060,6 +1057,9 @@ static void ThreadStop(vout_thread_t *vout, vout_display_state_t *state) vout_CloseWrapper(vout, state); } + /* Destroy the video filters2 */ + filter_chain_Delete(vout->p->filter.chain); + if (vout->p->decoder_fifo) picture_fifo_Delete(vout->p->decoder_fifo); assert(!vout->p->decoder_pool); -- 2.39.2