[FFmpeg-cvslog] avcodec: Do not lock during init if there is no init function

Derek Buitenhuis git at videolan.org
Wed Oct 14 14:54:15 CEST 2015


ffmpeg | branch: master | Derek Buitenhuis <derek.buitenhuis at gmail.com> | Mon Oct 12 10:32:28 2015 -0400| [17e41cf3614973258c24aa2452215ef7e3bfa5ed] | committer: Luca Barbato

avcodec: Do not lock during init if there is no init function

Signed-off-by: Derek Buitenhuis <derek.buitenhuis at gmail.com>
Signed-off-by: Luca Barbato <lu_zero at gentoo.org>

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

 libavcodec/utils.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavcodec/utils.c b/libavcodec/utils.c
index a1aece7..430926d 100644
--- a/libavcodec/utils.c
+++ b/libavcodec/utils.c
@@ -845,7 +845,7 @@ int attribute_align_arg avcodec_open2(AVCodecContext *avctx, const AVCodec *code
         av_dict_copy(&tmp, *options, 0);
 
     /* If there is a user-supplied mutex locking routine, call it. */
-    if (!(codec->caps_internal & FF_CODEC_CAP_INIT_THREADSAFE)) {
+    if (!(codec->caps_internal & FF_CODEC_CAP_INIT_THREADSAFE) && codec->init) {
         if (lockmgr_cb) {
             if ((*lockmgr_cb)(&codec_mutex, AV_LOCK_OBTAIN))
                 return -1;
@@ -1086,7 +1086,7 @@ FF_ENABLE_DEPRECATION_WARNINGS
 #endif
     }
 end:
-    if (!(codec->caps_internal & FF_CODEC_CAP_INIT_THREADSAFE)) {
+    if (!(codec->caps_internal & FF_CODEC_CAP_INIT_THREADSAFE) && codec->init) {
         entangled_thread_counter--;
 
         /* Release any user-supplied mutex. */



More information about the ffmpeg-cvslog mailing list