diff options
author | Andreas Rheinhardt <andreas.rheinhardt@outlook.com> | 2023-09-12 15:47:42 +0200 |
---|---|---|
committer | Andreas Rheinhardt <andreas.rheinhardt@outlook.com> | 2023-09-15 13:08:37 +0200 |
commit | d2bc039501cdfe2067365ca1bf4be7201f071c05 (patch) | |
tree | 6e5b86aef80f94591c7e6f3574f90e560c711441 /libavcodec/mss2.c | |
parent | 4f4dc0a1a29d3689ba8e73a08c13d4f2e152aad1 (diff) | |
download | ffmpeg-d2bc039501cdfe2067365ca1bf4be7201f071c05.tar.gz |
avcodec/error_resilience: Make applying decode_error_flags optional
Add a pointer parameter that if supplied will be used to return
the updated decode_error_flags. This will allow to fix several
races when using frame-threading; these resulted from AVFrame
that the earlier code updated concurrently being used as source
in an av_frame_ref() call in the decoder's update_thread_context.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
Diffstat (limited to 'libavcodec/mss2.c')
-rw-r--r-- | libavcodec/mss2.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libavcodec/mss2.c b/libavcodec/mss2.c index 70aa56cb84..2237cc8bb1 100644 --- a/libavcodec/mss2.c +++ b/libavcodec/mss2.c @@ -422,7 +422,7 @@ static int decode_wmv9(AVCodecContext *avctx, const uint8_t *buf, int buf_size, ff_vc1_decode_blocks(v); if (v->end_mb_x == s->mb_width && s->end_mb_y == s->mb_height) { - ff_er_frame_end(&s->er); + ff_er_frame_end(&s->er, NULL); } else { av_log(v->s.avctx, AV_LOG_WARNING, "disabling error correction due to block count mismatch %dx%d != %dx%d\n", |