vlc | branch: master | Rémi Denis-Courmont <r...@remlab.net> | Mon Apr 27 
19:24:05 2015 +0300| [e6d165e33020a6391da9a2479439785c1fd6faf2] | committer: 
Rémi Denis-Courmont

avcodec: missing lock in get_format()

Pointed-out-by: Thomas Guillem <tho...@gllm.fr>

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e6d165e33020a6391da9a2479439785c1fd6faf2
---

 modules/codec/avcodec/video.c |    5 +++++
 1 file changed, 5 insertions(+)

diff --git a/modules/codec/avcodec/video.c b/modules/codec/avcodec/video.c
index 75f1132..89bdbcb 100644
--- a/modules/codec/avcodec/video.c
+++ b/modules/codec/avcodec/video.c
@@ -1122,6 +1122,8 @@ static enum PixelFormat ffmpeg_GetFormat( AVCodecContext 
*p_context,
     if (!can_hwaccel)
         return swfmt;
 
+    wait_mt(p_sys);
+
     for( size_t i = 0; pi_fmt[i] != PIX_FMT_NONE; i++ )
     {
         enum PixelFormat hwfmt = pi_fmt[i];
@@ -1147,6 +1149,8 @@ static enum PixelFormat ffmpeg_GetFormat( AVCodecContext 
*p_context,
             continue;
         }
 
+        post_mt(p_sys);
+
         if (va->description != NULL)
             msg_Info(p_dec, "Using %s for hardware decoding", va->description);
 
@@ -1159,6 +1163,7 @@ static enum PixelFormat ffmpeg_GetFormat( AVCodecContext 
*p_context,
         return pi_fmt[i];
     }
 
+    post_mt(p_sys);
     /* Fallback to default behaviour */
     return swfmt;
 }

_______________________________________________
vlc-commits mailing list
vlc-commits@videolan.org
https://mailman.videolan.org/listinfo/vlc-commits

Reply via email to