diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2013-04-25 15:55:01 +0200 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2013-04-25 15:55:01 +0200 |
commit | 94b3a666fa87f96c4ed2b469bbc28e1ac4e67785 (patch) | |
tree | dd8accee31e13128ae765b7322dd10857fc939d9 | |
parent | 32a6dfeb125d485c9667a052547935b1b1bd13ca (diff) | |
download | ffmpeg-94b3a666fa87f96c4ed2b469bbc28e1ac4e67785.tar.gz |
avcodec/pthread: Make sure ff_thread_finish_setup() conditions match
Prevents warning from being shown due to multiple calls.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r-- | libavcodec/pthread.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/libavcodec/pthread.c b/libavcodec/pthread.c index 1e33fbcd18..871fb6e2bc 100644 --- a/libavcodec/pthread.c +++ b/libavcodec/pthread.c @@ -362,6 +362,9 @@ static int thread_init(AVCodecContext *avctx) return 0; } +#define THREAD_SAFE_CALLBACKS(avctx) \ +((avctx)->thread_safe_callbacks || (!(avctx)->get_buffer && (avctx)->get_buffer2 == avcodec_default_get_buffer2)) + /** * Codec worker thread. * @@ -383,11 +386,7 @@ static attribute_align_arg void *frame_worker_thread(void *arg) if (fctx->die) break; - if (!codec->update_thread_context && (avctx->thread_safe_callbacks || ( -#if FF_API_GET_BUFFER - !avctx->get_buffer && -#endif - avctx->get_buffer2 == avcodec_default_get_buffer2))) + if (!codec->update_thread_context && THREAD_SAFE_CALLBACKS(avctx)) ff_thread_finish_setup(avctx); avcodec_get_frame_defaults(&p->frame); @@ -1026,7 +1025,7 @@ static int thread_get_buffer_internal(AVCodecContext *avctx, ThreadFrame *f, int pthread_mutex_unlock(&p->progress_mutex); } - if (!avctx->thread_safe_callbacks && !avctx->codec->update_thread_context) + if (!THREAD_SAFE_CALLBACKS(avctx) && !avctx->codec->update_thread_context) ff_thread_finish_setup(avctx); if (err) |