On Mon, Apr 22, 2013 at 03:39:51PM +0200, Janne Grunau wrote:
> Intra codecs do not need an update_thread_context() function and never
> call ff_thread_finish_setup(). They rely on ff_thread_get_buffer()
> calling it. So call it even if the get_buffer2 function pointer is
> avcodec_default_get_buffer2 and it hasn't been calle before.
                                                 calleD
> ---
>  libavcodec/pthread.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/libavcodec/pthread.c b/libavcodec/pthread.c
> index 404804d..0ba68f9 100644
> --- a/libavcodec/pthread.c
> +++ b/libavcodec/pthread.c
> @@ -947,9 +947,9 @@ int ff_thread_get_buffer(AVCodecContext *avctx, 
> ThreadFrame *f, int flags)
>  
>          pthread_mutex_unlock(&p->progress_mutex);
>  
> -        if (!avctx->codec->update_thread_context)
> -            ff_thread_finish_setup(avctx);
>      }
> +    if (!avctx->codec->update_thread_context)
> +        ff_thread_finish_setup(avctx);
>  
>      if (err)
>          av_buffer_unref(&f->progress);
> -- 

hopefully OK
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to