[FFmpeg-cvslog] pthreads: reset got_frames on flush.

Michael Niedermayer git at videolan.org
Mon Jan 23 19:50:25 CET 2012


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Mon Jan 23 03:39:59 2012 +0100| [575d494de561049f36f9c5492e05c7d83dd78e75] | committer: Michael Niedermayer

pthreads: reset got_frames on flush.

This fixes memory corruption when seeking in broken streams.
a random mpeg4 in nut file was used to debug.

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=575d494de561049f36f9c5492e05c7d83dd78e75
---

 libavcodec/pthread.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/libavcodec/pthread.c b/libavcodec/pthread.c
index 35f8137..070dbff 100644
--- a/libavcodec/pthread.c
+++ b/libavcodec/pthread.c
@@ -731,6 +731,7 @@ static void park_frame_worker_threads(FrameThreadContext *fctx, int thread_count
                 pthread_cond_wait(&p->output_cond, &p->progress_mutex);
             pthread_mutex_unlock(&p->progress_mutex);
         }
+        p->got_frame = 0;
     }
 }
 



More information about the ffmpeg-cvslog mailing list