avcodec/pngdec: mark previous_picture as done on end of decode_frame_common()
ffmpeg | branch: master | Michael Niedermayer <michael@niedermayer.cc> | Mon Sep 28 02:42:39 2015 +0200| [9e9d731b510666edac3a2b450dfc331279db818b] | committer: Michael Niedermayer avcodec/pngdec: mark previous_picture as done on end of decode_frame_common() Fixes deadlock with threads Found-by: Paul B Mahol Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=9e9d731b510666edac...
libavcodec/pngdec.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libavcodec/pngdec.c b/libavcodec/pngdec.c index 1b47b18..bd84ee9 100644 --- a/libavcodec/pngdec.c +++ b/libavcodec/pngdec.c @@ -1217,6 +1217,7 @@ exit_loop: } } ff_thread_report_progress(&s->picture, INT_MAX, 0); + ff_thread_report_progress(&s->previous_picture, INT_MAX, 0); av_frame_set_metadata(p, metadata); metadata = NULL; @@ -1225,6 +1226,7 @@ exit_loop: fail: av_dict_free(&metadata); ff_thread_report_progress(&s->picture, INT_MAX, 0); + ff_thread_report_progress(&s->previous_picture, INT_MAX, 0); return ret; }
participants (1)
-
git@videolan.org