diff --git a/libavcodec/hapdec.c b/libavcodec/hapdec.c index 6e3c138199..e6b7d61b92 100644 --- a/libavcodec/hapdec.c +++ b/libavcodec/hapdec.c @@ -177,7 +177,8 @@ static int hap_decode(AVCodecContext *avctx, void *data, ret = ff_thread_get_buffer(avctx, &tframe, 0); if (ret < 0) return ret; - ff_thread_finish_setup(avctx); + if (avctx->codec->update_thread_context) + ff_thread_finish_setup(avctx); /* Use the decompress function on the texture, one block per thread */ avctx->execute2(avctx, decompress_texture_thread, tframe.f, NULL, blocks);